

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、串口通訊設計之串口通訊設計之Verilog實現實現FPGA串口模塊是將由RS485發(fā)送過來的數據進行處理,提取出8位有效數據,并按異步串口通訊的格式要求輸出到MAX3223的12腳。FPGA選用Xilinx公司的SpartanII系列xc2s50。此部分為該設計的主體。如上所述,輸入數據的傳輸速率為700k波特率。為了使FPGA能夠正確地對輸入數據進行采樣,提高分辨率能力和抗干擾能力,采樣時鐘必須選用比波特率更高的時鐘,理論上至少是波特
2、率時鐘的2倍。1串口通信基本特點隨著多微機系統的應用和微機網絡的發(fā)展,通信功能越來越顯得重要。串行通信是在一根傳輸線上一位一位地傳送信息.這根線既作數據線又作聯絡線。串行通信作為一種主要的通信方式,由于所用的傳輸線少,并且可以借助現存的電話網進行信息傳送,因此特別適合于遠距離傳送。在串行傳輸中,通信雙方都按通信協議進行,所謂通信協議是指通信雙方的一種約定。約定對數據格式、同步方式、傳送速度、傳送步驟、糾錯方式以及控制字符定義等問題做出統
3、一規(guī)定,通信雙方必須共同遵守。異步起止式的禎信息格式為:每禎信息由四部分組成:a.1位起始位。b.5~8位數據位。傳送順序是低位在前,高位在后.依次傳送。c.一位校驗位,也可以沒有。d.最后是1位或是2位停止位。FPGA(FieldPmgrammableGateArray)現場可編程門陣列在數字電路的設計中已經被廣泛使用。這種設計方式可以將以前需要多塊集成芯片的電路設計到一塊大模塊可編程邏輯器件中,大大減少了電路板的尺寸,增強了系統的可
4、靠性和設計的靈活性。本文詳細介紹了已在實際項目中應用的基于FPGA的串口通訊設計。本設計分為硬件電路設計和軟件設計兩部分,最后用仿真驗證了程序設計的正確性。2系統的硬件設計本方案的異步串行通信的硬件接口電路圖如圖1所示,主要由四部分組成:RS485數據發(fā)送模塊、FPGA串口模塊、MAX3223和DB9。各部分功能簡述如下:RS485數據發(fā)送模塊是將前續(xù)電路的數據發(fā)送到FPGA,供本電路處理,亦即本電路的輸入。RS485是符合RS485和
5、RS4225串口標準的低功耗半雙工收發(fā)器件,有3.3V和5V兩種,在本設計中選用了3.3V的器件SP3485。在本設計中。485的7腳和8腳與前端信號相連接,用于接收輸入的數據。數據格式是這樣的:一幀數據有25位,報頭是16個高電平和1個低電平,接下來是8位有效的數據。傳輸速率為700k波特率。2腳是使能端,與FPGA的IO口相連,由FPGA提供邏輯控制信號。1腳和4腳也與FPGA相連,由FPGA對輸入數據進行處理。FPGA串口模塊是將
6、由RS485發(fā)送過來的數據進行處理,提取出8位有效數據,并按異步串口通訊的格式要求輸出到MAX3223的12腳。FPGA選用Xilinx公司的SpartanII系列xc2s50。此部分為該設計的主體。如上所述,輸入數據的傳輸速率為700k波特率。為了使FPGA能夠正確地對輸入數據進行采reg[2:0]statereg[4:0]counter用來計算報頭報尾中1的個數regtagtag1reg[2:0]cnt3regtxdone=“1“b
7、1一個字節(jié)數據傳輸完畢標志提取有效數據位并按串行通訊格式裝載數據always@(posedgenclkposedgerst)beginif(rst)beginstate=0counter=0tag1=0tag=“0“indata_buf=8bzdout_buf=10bzbitpos=“7“cnt3=0endelsecase(state)s0:begintag=“0“表示數據沒有裝好if(din)begincounter=counter1
8、state=s0if(counter==15)如果檢測到16個1則轉入s1狀態(tài)檢測接下來的是不是0beginstate=s1counter=0endendelsebegincounter=0state=s0endends1:if(!din)如果是0的話轉入s2狀態(tài)提取八位有效數據state=s2else否則轉到s0狀態(tài)重新檢測state=s0s2:if(cnt3==3)是否采集四次數據begincnt2=0indata_buf[bitp
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 雙機串口通訊
- 使用serialport類設計串口通訊程序
- 基于cs的串口通訊實現---開題報告
- 使用serialport類設計串口通訊程2
- 8251串口通訊課程設計
- vc實現串口通訊程序中的多線程應用
- 嵌入式系統多串口通訊方案的設計與實現.pdf
- labwindows_cvi開發(fā)環(huán)境下實現串口通訊的方法
- 串口攝像頭通訊協議
- 實驗6 串口通訊實驗
- 畢業(yè)設計(論文)-基于labview的串口通訊系統設計
- 基于gprs和單片機的串口通訊設計
- [程序寶典]vb串口通訊實例
- 歐姆龍plc串口通訊教程
- 基于PCI總線的多串口通訊卡的研究與實現.pdf
- 串口通信工程筆記之協議設計
- 基于fpga的串口通訊電路設計 畢業(yè)論文
- 串口通信工程筆記之協議設計
- 串口通訊布線及常見故障處理
- 基于B-S和串口通訊下棉花收購系統的實現.pdf
評論
0/150
提交評論