国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于FPGA的UART接口開發

發布時間:2010-11-8 11:29    發布者:eetech
關鍵詞: FPGA , UART , 接口 , 開發
設計背景

串口即通用異步收發器(UART,Universal Asynchronous Receiver Transmitter)。串行通信具有傳輸線少、成本低、可靠性高等優點,所以系統間互聯常采用RS-232接口方式,一般該接口由UART 專用芯片來實現。但UART接口芯片一般引腳較多,內含許多輔助模塊和一些輔助功能,在實際使用時往往用不到這些功能,因此若采用UART專用芯片,必將使電路變得復雜,PCB面積增大,從而導致成本增加,系統的穩定性和可靠性降低。基本的UART通信只需要兩條信號線(RXD和TXD),接收與發送是全雙工形式,其中TXD是UART的發送端, RXD是UART的接收端。由于FPGA的功能日益強大,開發周期短、可重復編程等優點也越來越明顯,可以在FPGA芯片上集成UART功能模塊,從而簡化電路,縮小PCB面積,提高系統可靠性。此外,FPGA的設計具有很高的靈活性,可以方便地進行升級和移植。

設計要求

本接口作為一個關于內容保護系統的電路板的一部分,主要用于和計算機進行通信,也可與其他帶UART接口的電路板進行通信。對數據傳輸速率要求不高,傳輸距離也不要求很長,但傳輸數據要求準確可靠。該接口可用來監控電路內部狀態,將FPGA內部信息通過串口輸出至計算機,以達到輔助調試電路的目的。另外,電路板上的FPGA外掛有串行Flash,可通過串口對Flash進行調試,將Flash中的數據輸出至計算機,并可將數據通過串口寫入Flash中。簡而言之,該接口是作為計算機與電路板的一個可靠的雙向數據傳輸通道。

UART的實現原理

UART是異步通信方式,通信的發送方和接收方各自有獨立的時鐘,傳輸的速率由雙方約定。本設計采用最常用的每秒9600波特的傳輸速度。

UART的通信協議十分簡單,以低電平作為起始位,高電平作為停止位,中間可傳輸5~8比特數據和1比特奇偶校驗位,奇偶校驗位的有無和數據比特的長度由通信雙方約定。一幀數據傳輸完畢后可以繼續傳輸下一幀數據,也可以繼續保持為高電平,兩幀之間保持高電平,持續時間可以任意長。本方案采用不添加校驗位的方法,以提高數據傳輸效率。發送端發送數據時先發一低電平,然后發送8比特數據,之后馬上把信號拉高,從而完成一幀數據傳送。接收端接收到低電平時開始計數,然后接收8比特信息位后如果檢測到高電平即認為已接收完一幀數據,繼續等待下一幀起始信號低電平的到來,若接收完8比特數據后沒有檢測到高電平則認為這不是一幀有效數據,將其丟棄,繼續等待起始信號。時序關系如圖1所示,收發可同時進行,互不干擾。





圖1 RS-232接口的工作時序

硬件電路原理圖及說明

一個完整的RS-232接口是一個25針的D型插頭座,25針的連接器實際上只有9根連接線,所以就產生了一個簡化的9針D型RS-232插頭座,常用的就是一個9針的D型插頭座。通常只用到一根發送信號線、一根接收信號線和一條地線,其余的振鈴指示、請求傳送、清除傳送、準備就緒及數據載波檢測等線可以做懸空處理。

RS-232標準規定邏輯1的電平為 -15~-3V,邏輯0的電平為+3~+15V。CMOS電路的電平范圍一般是從0V到電源電壓,FPGA的I/O輸入輸出電壓通常為0~3.3V,為了與FPGA 供電電壓保持一致,必須加電平轉換芯片。選用Maxim公司的MAX3232電平轉換芯片,電路原理圖如圖2所示。





圖2 RS-232接口電路

連線采用最簡單的3 線制連接模式,即只需要兩根信號線和一根地線來完成數據收發。而FPGA 只需要選擇兩個普通I/O引腳分別與接口芯片MAX3232 對應引腳T2IN、R2OUT相連即可完成將串口電平轉換為設備電路板的工作電平,即實現RS-232電平和TTL/ CMOS 電平的轉換。一個MAX3232芯片可以支持兩個串口的電平變換,我們選擇其中的一組接口,圖中的4個電阻可以省去。在電路中加入了0Ω的跳線電阻,是為了在這組接口出故障時可以方便地跳線,使用另一組接口。

軟件設計

異步收發器由波特率發生器、UART接收器和UART發送器三個模塊構成。采用的是每秒9600波特的傳輸速度,而系統提供的時鐘是10MHz,這就要求進行速率變換。在實際中由于電路中存在干擾等因素,在數據邊緣進行采樣容易發生誤判,只有在數據的中央進行采樣出錯的概率才能降到最低,所以使用16倍于波特率的時鐘,即9600×16Hz=15600Hz。因此波特率發生器輸出的時鐘頻率應為15600Hz,UART 收發的每一個數據寬度都是波特率發生器輸出的時鐘周期的16倍,采用Altera公司芯片內部自帶的鎖相環可以方便地實現。UART接收器和UART發送器均采用Verilog語言編程實現。


通常使用的數據多為并行數據,為了方便與系統中其他電路互連,UART接收器的輸出數據和UART發送器的輸入數據均為8比特并行數據。UART接收器將串行數據接收下來并將其轉化為并行數據送出,UART發送器將輸入的并行數據轉換為串行數據并按照UART的幀格式輸出。





圖3 UART接收器符號圖

圖3為UART接收器的符號圖,其中rst為全局復位信號,rxd為串行數據輸入端,baudClk16x為輸入時鐘,dataOut[7..0]為并行數據輸出口,irq為輸出數據的指示信號。首先接收器等待起始位的到來,在每個時鐘上升沿檢測輸入數據是否為低電平,若檢測到低電平,則開始計數,如果連續8個時鐘內輸入數據均為低電平,則認為起始信號有效,其中若有一次采樣得到的為高電平則認為起始信號無效,返回初始狀態重新等待起始信號的到來。認定起始信號有效后,每隔16個時鐘采樣一次,這樣就可以保證每次都在數據的中點出采樣,將采樣結果送入8比特的移位寄存器,8比特數據采樣結束后,間隔16個時鐘采樣停止位。如果采得的是高電平,則認為這幀數據有效,將移位寄存器中的數據并行送出同時將輸出數據的指示信號置高,然后接收器復位,重新等待下一幀的到來;若采得的為低電平,則認為這不是一幀有效數據,不將移位寄存器中的數據輸出,直接返回初始狀態。





圖4 UART發送器符號圖

圖4 為UART發送器的符號圖,其中flag為輸入數據指示信號,rst為全局復位信號,clkin為輸入時鐘,din[7..0]為并行數據輸入端,tdo為串行數據輸出端。接收器在每個時鐘的上升沿檢測輸入數據指示信號,若檢測到其為高電平,則將并行輸入數據鎖存入內部的8比特移位寄存器,接下來先送出一個低電平并保持16個時鐘,然后每隔16個時鐘將移位寄存器中的數據移出一位,最后送出高電平,返回初始狀態。

系統調試

UART接收器和發送器可根據實際需要單獨使用,但在調試時為了方便,將兩者對接起來,如圖5所示。UART接收器的輸出與UART發送器的輸入相連,復位信號和時鐘信號共用,時鐘信號由片外晶振提供,輸入FPGA后通過鎖相環轉換為需要的頻率。





圖5 調試系統模塊圖

串口的調試需要借助于串口調試工具,可以用VC編程實現,也可以直接使用網上已有的調試工具。直接選用網上的串口調試助手進行了測試,將數據從計算機送出,經過UART接口接收后再送回計算機。經過長達數十分鐘的不間斷接收和發送后,將送回計算機的數據與原始數據進行比較,多次測試均沒有發生任何錯誤,這充分說明了這一UART接口程序具有高度的可靠性和穩定性,可以滿足設計要求。

結束語

用FPGA 來對UART接口進行開發,可以減小系統的PCB面積,降低系統的功耗,提高設計的穩定性和可靠性,并可以充分利用了FPGA 的剩余資源。綜合報告顯示這一UART接口部分僅消耗了68 個邏輯單元,對于FPGA來說,這點資源實在是微不足道的,用如此少的資源就可以為系統增添一條新的數據通道,這是十分值得的。該設計具有很大的靈活性,雖然這一UART接口工作在每秒9600波特,但通過調整鎖相環的參數,就可以使其工作在其他頻率,十分方便。這僅僅是一個簡單的通信接口,可根據不同系統的需要,增加FIFO等內容。該模塊也可以作為一個完整的IP核,靈活地移植進各種型號的FPGA中,通用性很強。
本文地址:http://www.qingdxww.cn/thread-37347-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 更佳設計的解決方案——Microchip模擬開發生態系統
  • 想要避免發生災難,就用MPLAB SiC電源仿真器!
  • 利用模擬開發工具生態系統進行安全電路設計
  • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
  • 貿澤電子(Mouser)專區

相關在線工具

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩专区在线观看 | 在线日本看片免费人成视久网 | 免费毛片视频网站 | 成人日韩在线 | 欧美天天视频 | 久久大香伊蕉在人线观看热2 | 在线观看成人网 | 亚洲欧洲精品成人久久曰 | 欧美日韩国产一区二区 | 天天操天天干天天舔 | 久久99热狠狠色精品一区 | 成人综合视频网 | 亚洲综合极品香蕉久久网 | 日本九九精品一区二区 | 国产在线精品一区二区 | 91精品天美精东蜜桃传媒入口 | 日本中文字幕永久在线 | 啪啪福利视频 | 亚洲精品 国产 日韩 | 羞羞网站在线播放 | 午夜91视频 | 99视频精品国在线视频艾草 | 国产视频三级 | 国产在线第一区二区三区可以下载 | 午夜视频网址 | 亚洲无线码一区二区三区 | 免费一级做a爰片性色毛片 免费一级做a爰片久久毛片潮 | 国产色在线 | 91精品成人免费国产片 | 国产精品亚洲精品影院 | 天美传媒精品 | 蜜臀网| 国产精品资源 | 国产高清视频在线播放 | 国产高清久久99 | 四虎永久网址影院 | 日本影院在线观看 | 尤物久久99热国产综合 | 国产精品网红女主播久久久 | 日韩欧美色综合 | 国产精品一区二区三区久久 |