嵌入式Linux串口應用編程基礎知識

常見的數據通信的基本方式可分爲並行通信與串行通信兩種。

    ● 並行通信是指利用多條數據傳輸線將一個字數據的各比特位同時傳送。它的特點是傳輸速度快,適用於傳輸距離短且傳輸速度較高的通信。
    ● 串行通信是指利用一條傳輸線將數據以比特位爲單位順序傳送。特點是通信線路簡單,利用簡單的線纜就可實現通信,降低成本,適用於傳輸距離長且傳輸速度較慢的通信。

    串口是計算機一種常用的接口,常用的串口有RS-232-C接口。它是於1970年由美國電子工業協會(EIA)聯合貝爾系統、調制解調器廠家及計算機終端生產廠家共同制定的用於串行通信的標準,它的全稱是“數據終端設備(DTE)和數據通信設備(DCE)之間串行二進制數據交換接口技術標準”。該標準規定採用一個DB25芯引腳的連接器或9芯引腳的連接器,其中最常用的9芯引腳的連接器如圖2.4所示。

  
圖2.4 9芯引腳串行接口圖

    S3C2410X內部具有2個獨立的UART控制器,每個控制器都可以工作在Interrupt(中斷)模式或者DMA(直接存儲訪問)模式。同時,每個UART均具有16字節的FIFO(先入先出寄存器),支持的最高波特率可達到230.4Kb/s。UART的操作主要分爲以下幾個部分:數據發送、數據接收、產生中斷、設置波特率、Loopback模式、紅外模式及硬軟流控模式。

    關於串口參數的配置,在配置超級終端和minicom時已經接觸過,一般包括波特率、起始位比特數、數據位比特數、停止位比特數和流控模式。在此,可以將其配置爲波特率115200、起始位1b、數據位8b、停止位1b和無流控模式。

    在Linux中,所有的設備文件一般都位於“/dev”下,其中,串口一和串口二對應的設備名依次爲“/dev/ttyS0”和“/dev/ttyS1”,而且USB轉串口的設備名通常爲“/dev/ttyUSB0”和“/dev/ttyUSB1”(因驅動不同該設備名會有所不同),可以查看在“/dev”下的文件以確認。在本章中已經提到過,在Linux下對設備的操作方法與對文件的操作方法是一樣的,因此,對串口的讀寫就可以使用簡單的read()、write()函數來完成,所不同的只是需要對串口的其他參數另做配置,下面就來詳細講解串口應用開發的步驟。

轉自:http://www.farsight.com.cn/news/emb173.htm

發佈了2 篇原創文章 · 獲贊 8 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章