<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > 串口通訊基礎(chǔ)及S3C2410 UART控制器

          串口通訊基礎(chǔ)及S3C2410 UART控制器

          作者: 時間:2016-12-06 來源:網(wǎng)絡(luò) 收藏

            ULCONn ( Line Control Register)見圖5-13

          本文引用地址:http://www.ex-cimer.com/article/201612/341184.htm

              

           

            圖5-13

            Word Length :資料位長度

            Number of Stop Bit :停止位數(shù)

            Parity Mode :奇偶校驗位類型

            Infra-Red Mode :/紅外模式選擇(當以模式工作時,需設(shè)為“0”)

            UCONn (UART Control Register)見圖5-14

            Receive Mode :選擇接收模式。如果是采用DMA模式的話,還需要指定說使用的DMA信道。

            Transmit Mode :同上。

            Send Break Signal :選擇是否在傳1幀資料中途發(fā)送Break信號。

            Loopback Mode :選擇是否將UART置于Loopback測試模式。

            Rx Error Status Interrupt Enable :選擇是否使能當發(fā)生接收異常時,是否產(chǎn)生接收錯誤中斷。

            Rx Time Out Enable :是否使能接收超時中斷。

            Rx Interrupt Type :選擇接收中斷類型。

            選擇0:Pulse(脈沖式/邊沿式中斷。非FIFO模式時,一旦接收緩沖區(qū)中有資料,即產(chǎn)生一個中斷;為FIFO模式時,一旦當FIFO中的資料達到一定的觸發(fā)水平后,即產(chǎn)生一個中斷)

            選擇1:Level(電平模式中斷。非FIFO模式時,只要接收緩沖區(qū)中有資料,即產(chǎn)生中斷;為FIFO模式時,只要FIFO中的資料達到觸發(fā)水平后,即產(chǎn)生中斷)

            Tx Interrupt Type :類同于Rx Interrupt Type

            Clock Selection :選擇UART波特率發(fā)生器的時鐘源。

              

           

            圖5-14

            UFCONn (UART FIFO Conrtol Register)見圖5-15

            FIFO Enable :FIFO使能選擇。

            Rx FIFO Reset :選擇當復(fù)位接收FIFO時是否自動清除FIFO中的內(nèi)容。

            Tx FIFO Reset :選擇當復(fù)位發(fā)送FIFO時是否自動清除FIFO中的內(nèi)容。

            Rx FIFO Trigger Level :選擇接收FIFO的觸發(fā)水平。

            Tx FIFO Trigger Level :選擇發(fā)送FIFO的觸發(fā)水平。

              

           

            圖5-15

            UMCONn (UART Modem Control Register)見圖5-16

            Request to Send :如果在AFC模式下,該位將由UART控制器自動設(shè)置;否則的話就必須由用戶的軟件來控制。

            Auto Flow Control :選擇是否使能自動流控(AFC)。

              

           

            圖5-16

            UTRSTATn (UART TX/RX Status Register)見圖5-17

            Receive buffer data ready :當接收緩沖寄存器從UART接收端口接收到有效資料時將自動置“1”。反之為“0”則表示緩沖器中沒有資料。

            Transmit buffer empty :當發(fā)送緩沖寄存器中為空,自動置“1”;反之表明緩沖器中正有資料等待發(fā)送。

            Transmitter empty :當發(fā)送緩沖器中已經(jīng)沒有有效資料時,自動置“1”;反之表明尚有資料未發(fā)送。

              

           

            圖5-17

            UERSTATn (UART Error Status Register)見圖5-18

            Overrun Error :為“1”,表明發(fā)生Overrun錯誤。

            Frame Error :為“1”。表明發(fā)生Frame(幀)錯誤。

              

           

            圖5-18

            UFSTATn?。?UART FIFO Status Register)見圖5-19

            Rx FIFO Count :接收FIFO中當前存放的字節(jié)數(shù)。

            Tx FIFO Count :發(fā)送FIFO中當前存放的字節(jié)數(shù)。

            Rx FIFO Full :為“1“表明接收FIFO已滿。

            Tx FIFO Full :為“1“表明發(fā)送FIFO已滿。

              

           

            圖5-19

            UMSTATn?。?UART FIFO Status Register)見圖5-20

            Clear to Send :為“0”表示CTS無效;為“1”表示CTS有效。

            Delta CTS :指示自從上次CPU訪問該位后,nCTS的狀態(tài)有無發(fā)生改變。

            為“0”則說明不曾改變;反之表明nCTS信號已經(jīng)變化了。

              

           

            圖5-20

            UTXHn 和 URXHn 分別是UART發(fā)送和接收資料寄存器

            這兩個寄存器存放著發(fā)送和接收的資料,當然只有一個字節(jié)8位資料。需要注意的是在發(fā)生溢出錯誤的時候,接收的資料必須要被讀出來,否則會引發(fā)下次溢出錯誤

            UBRDIVn :(UART Baud Rate Divisor Register)見圖5-21

              

           

            圖5-21

            關(guān)于UART波特率的計算方法,在前面的內(nèi)容中已經(jīng)有詳細的闡述,此處不做多余說明。

            小結(jié):讀寫狀態(tài)寄存器UTRSTAT 以及錯誤狀態(tài)寄存UERSTAT,可以反映芯片目前的讀寫狀態(tài)以及錯誤類型。FIFO 狀態(tài)寄存器UFSTAT 和MODEM 狀態(tài)寄存器UMSTAT,通過前者可以讀出目前FIFO 是否滿以及其中的字節(jié)數(shù);通過后者可以讀出目前MODEM 的CTS狀態(tài)。


          上一頁 1 2 下一頁

          關(guān)鍵詞: 串口 UART

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();