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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA實(shí)現(xiàn)異步串行通信

          基于FPGA實(shí)現(xiàn)異步串行通信

          作者: 時(shí)間:2013-10-23 來源:網(wǎng)絡(luò) 收藏

          摘要:為了適應(yīng)全數(shù)字化自動(dòng)控制更加廣泛的應(yīng)用,采用現(xiàn)場可編程門陣列()對控制器(UART)進(jìn)行多模塊的系統(tǒng)設(shè)計(jì)的方法,使串口的集成度更高。對UART系統(tǒng)結(jié)構(gòu)進(jìn)行了模塊化分解,可分為三個(gè)模塊:波特率發(fā)生器控制模塊、數(shù)據(jù)發(fā)送模塊及數(shù)據(jù)接收模塊。采用Venlog語言描述硬件功能,利用Xilinx公司的FPGA芯片,在Xilinx ISE Design Suite 13. 4環(huán)境下進(jìn)行設(shè)計(jì)、編譯、綜合、下載。采用第三方仿真工具M(jìn)odelSim進(jìn)行模擬仿真。
          關(guān)鍵字:FPGA;UART;多模塊;Verilog;Xilinx ISE

          (UART)是一種廣泛應(yīng)用的數(shù)據(jù)傳輸協(xié)議,UART的要求是傳輸線少,可靠性高而且傳輸距離遠(yuǎn)。UART功能負(fù)責(zé)從總線采集數(shù)據(jù),轉(zhuǎn)換成傳輸格式,然后發(fā)送到串口。也負(fù)責(zé)從串口接收數(shù)據(jù),檢查和刪除附加的位,并傳送結(jié)果數(shù)據(jù)給總線。串行通信廣泛的應(yīng)用于軍事、工業(yè)、自動(dòng)控制、儀器、通信、醫(yī)藥、話音圖像處理等眾多領(lǐng)域?,F(xiàn)實(shí)應(yīng)用中多采用專用集成芯片UART功能,如8250、825 0A、16450、16C451、16C551等。但在實(shí)際應(yīng)用中,一般只需要UART的幾個(gè)主要功能,專用芯片成本比較大且造成資源的浪費(fèi)。近年來隨著電子設(shè)計(jì)技術(shù)的日趨成熟,特別是FPGA在集成度和速度上的大幅提高,可以用一個(gè)芯片構(gòu)成一個(gè)復(fù)雜的系統(tǒng)。一個(gè)芯片就能完成處理計(jì)算、通信、控制等多功能,而且成本大幅度降低。根據(jù)以上考慮,本文采用FPGAUART功能。

          1 UART通信原理
          串行通信分為兩種類型:同步通信方式和異步通信方式。UART即通用異步串行通信收發(fā)器。UART的一幀數(shù)據(jù)由起始位、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位組成。數(shù)據(jù)在傳輸過程中是通過一個(gè)字符接一個(gè)字符進(jìn)行傳輸來通信的。每一幀的信息在傳送前傳輸線處于高電平狀態(tài)。在傳送一個(gè)字符信息的時(shí)候,每一個(gè)字符的接收是靠起始位來同步的,字符的前面是一位起始位,首先發(fā)送起始位為低電平,一般用下降沿通知收方傳輸開始,然后發(fā)送起始位之后的數(shù)據(jù)位,數(shù)據(jù)位的傳送先低位后高位,字符本身由5~8位數(shù)據(jù)位組成。

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

          a.JPG


          數(shù)據(jù)位后面是奇偶校驗(yàn)位,奇偶校驗(yàn)位后的是停止位,標(biāo)志著一幀字符結(jié)束。停止位后為高電平,為空閑位,并為下一個(gè)字符的開始傳送做準(zhǔn)備。在發(fā)送、接收數(shù)據(jù)時(shí),數(shù)據(jù)的幀與幀之間如果有間隙,就要在停止位之后附加空閑位,停止位后面是不定長度的空閑位。停止位和空閑位都規(guī)定高電平,這樣可以保證起始位開始處有一個(gè)下降沿。如圖1所示。
          1. 1 系統(tǒng)設(shè)計(jì)與硬件實(shí)現(xiàn)
          異步通信允許在串行鏈路上進(jìn)行全雙工的通信。本文把異步通信電路作為一個(gè)整體來實(shí)現(xiàn),數(shù)據(jù)接收經(jīng)過MAX232進(jìn)行電平轉(zhuǎn)換后經(jīng)FPGA串口模塊的RXD端輸入,由FPGA進(jìn)行串/并轉(zhuǎn)換后,8位有效數(shù)據(jù)進(jìn)入總線,再進(jìn)入處理芯片。數(shù)據(jù)發(fā)送經(jīng)數(shù)據(jù)處理后經(jīng)由總線進(jìn)入FPGA串口模塊,8位有效數(shù)據(jù)在FPGA中進(jìn)行并行轉(zhuǎn)換為串行數(shù)據(jù)后由TXD端輸出到MAX232的12管腳,在MAX232種經(jīng)過電平轉(zhuǎn)換后由TXD端輸出,系統(tǒng)基本結(jié)構(gòu)框圖如圖2所示。

          b.JPG


          幀格式采用1位開始位,8位數(shù)據(jù)位,1位停止位,波特率為115 200,根據(jù)采用的幀格式,需要發(fā)送的數(shù)據(jù)為10位(1位開始位、8位數(shù)據(jù)位、1位停止位),在發(fā)送完這10位后,就應(yīng)該停止發(fā)送,并使發(fā)送端電平處于邏輯1,然后等候下次的發(fā)送。

          fpga相關(guān)文章:fpga是什么


          通信相關(guān)文章:通信原理


          數(shù)字濾波器相關(guān)文章:數(shù)字濾波器原理

          上一頁 1 2 3 下一頁

          評論


          相關(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); })();