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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > ARM中基于DMA的高效UART通訊及其應用

          ARM中基于DMA的高效UART通訊及其應用

          作者: 時間:2012-04-16 來源:網(wǎng)絡 收藏

          1、引言

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

          由于串行口的廣泛,在傳統(tǒng)的8位和16位的處理器以及32位處理器中,一般都帶有串行口。傳統(tǒng)的的數(shù)據(jù)中,采用的方式一般有兩種,查詢式和中斷式。查詢方式下CPU的負擔較重,浪費了處理器的能力,不能夠很好的處理其他的事件;中斷方式可以在接收到信息或需要發(fā)送數(shù)據(jù)時產(chǎn)生中斷,在中斷服務程序中完成數(shù)據(jù)的接收與發(fā)送。相對于查詢方式,中斷方式的CPU利用率要高。在CPU任務簡單的系統(tǒng)中,使用中斷方式確實是一種好方法。但是在復雜的系統(tǒng)中,比如移動機器人,處理器需要處理串行口通信,多個傳感器數(shù)據(jù)的采集以及處理,實時軌跡的生成,運動軌跡插補以及位置閉環(huán)控制等等任務,牽扯到多個中斷的優(yōu)先級分配問題。為了保證數(shù)據(jù)發(fā)送與接收的可靠性,需要把UART的中斷優(yōu)先級設計較高,但是系統(tǒng)可能還有其他的需要更高優(yōu)先級的中斷,必須保證其定時的準確,這樣就有可能造成串行的中斷不能及時響應,從而造成數(shù)據(jù)丟失。為此,筆者在采用S3c44b0x設計移動機器人控制器時,為了保證串行的數(shù)據(jù)及時可靠的接收,同時兼顧其它任務不受影響,采用了和中斷方式相結合的UART串行通信方式。是 Direct Memory Access的縮寫,意思是“存儲器直接訪問”,它是一種高速的數(shù)據(jù)傳輸操作,允許在外部設備和存儲器之間直接讀/寫數(shù)據(jù),即不通過CPU,也不需要 CPU干預。整個數(shù)據(jù)傳輸操作是在一個稱作控制器的控制下進行的。CPU除了在數(shù)據(jù)傳輸開始和結束時做一點處理外,在傳輸過程中可以進行其他的工作。這樣,在大部分時間里,CPU和輸入/輸出設備都處于并行的操作狀態(tài)。其基本原理可以查閱教科書,此處不贅述。這里僅介紹S3c44c0x的DMA控制器。

          2、S3c44b0x中的DMA控制器和UART的特性

          S3c44b0x采用7TDMI核,具有4 通道的DMA控制器,并且對應有4個中斷。其中兩個DMA通道稱做ZDMA(通用DMA),連接在SSB(系統(tǒng)總線)上,另外兩個DMA通道稱做 BDMA(橋DMA),連接于SSB和SPB(外設總線)之間的接口層。連接于SSB上的ZDMA控制器可以用于從存儲器到存儲器,從存儲器到固定目標的 I/O存儲器,和從I/O 設備到存儲器之間的數(shù)據(jù)傳輸。另外的兩個BDMA 控制器主要作用是在外部存儲器和內(nèi)部外設之間傳輸數(shù)據(jù),這里的I內(nèi)部外設包括SIO,IIS,TIMER和UART等。BDMA與ZDMA可以通過軟件啟動,也可以通過硬件啟動。此設計中我們使用UART0,與其對應的DMA通道為BDMA0。其控制器框圖如圖1所示。

          S3c44b0x的UART單元提供2個獨立的異步串行I/O口,每個口均可以工作于中斷模式或者DMA模式,即 UART可以產(chǎn)生內(nèi)部中斷請求或者DMA請求,在CPU的串行I/O口之間傳送數(shù)據(jù),支持高達115.2KBPS的傳輸速率,每個UART通道包含2個 16位的分別用于發(fā)送和接收的FIFO通道。

          6.jpg

          3、硬件電路設計

          由于S3c44b0x自帶支持UART的DMA控制器,所以關于DMA硬件部分不需要作任何的工作。S3C44B0X的I/O口電壓為3.3V,而PC機一端的串口采用RS232電平,所以中間要經(jīng)過電平轉(zhuǎn)換,在此采用SP3232E芯片。連接電路如圖2所示?!   ?/p>

          7.jpg


          上一頁 1 2 3 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁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); })();