FPGA串口通信匯總_第1頁
FPGA串口通信匯總_第2頁
FPGA串口通信匯總_第3頁
FPGA串口通信匯總_第4頁
FPGA串口通信匯總_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、FPG凝驗報告目錄FPGA驗報告1目錄1基于VHDL的串口通信實現設計 3摘要3正文31 .研究背景知識31.1 串口簡介31.2 串口通信參數32 .系統(tǒng)整體設計52.1 系統(tǒng)框圖52.2 原理圖52.3 管腳介紹:63 .系統(tǒng)模塊設計63.1 分頻模塊63.11 流程圖63.12 程序73.2 接收模塊83.21 流程圖83.22 程序93.3 發(fā)送模塊103.31 流程圖103.32 程序114 .系統(tǒng)調試124.1 時序調試124.2 硬件調試135 .總結14基于VHDL的串口通信實現設計摘要串口是計算機上一種非常通用設備通信的協(xié)議 ,其特點是通信線路簡單,成 本低,特別適用于遠距離

2、通信,因此有較為廣泛的應用.為了深入了解用口,本 課程設計基于VHDL語言,利用FPGA開發(fā)板實現了板間串口通信.在程序設 計中,考慮到串口波特率、數據格式等參數,共采用了四個模塊:分頻模塊即 波特率產生模塊,接受模塊,發(fā)送模塊,顯示模塊.通過軟件和開發(fā)板調試, 實現了板和串口調試助手收發(fā)數據, 軟件改變波特率等參數,并在數碼管顯示的 功能.關鍵詞:串口 VHDL FPGA分頻接收發(fā)送顯示正文1 .研究背景知識1.1 串口簡介串行接口 Serial Interface是指數據一位一位地順序傳送,具特點是通信線路 簡單,只要一對傳輸線就可以實現雙向通信 可以直接利用 線作為傳輸線 從而大大降低了

3、本錢,特別適用于遠距離通信,但傳送速度較慢.串口通信的兩種最根本的方式:同步串行通信方式和異步串行通信方式.1.2 串口通信參數雙方為了可以進行通信,必須要遵守一定的通信規(guī)那么,這個共同的規(guī)那么 就是通信端口的初始化.通信端口的初始化有以下幾項必須設置:1. 數據的傳輸速率傳輸雙方通過傳輸線的電壓改變來交換數據, 但傳輸線的電壓改變的速度必須和接收端的接收速度保持一致, 個可參考的同步時鐘作為基準.RS-232通常用于異步傳輸,即雙方并沒有一 由于沒有一個參考時鐘,雙方所發(fā)送的上下電位 到底代表幾個位就不得而知了,要使得雙方的數據讀取正常,就要考慮到傳輸速 率一一波特率,其所代表的意義是每秒鐘

4、所能產生的最大電壓狀態(tài)改變率, 或者 說是每秒鐘可以振蕩的次數.2. 數據的發(fā)送單位一般用行通信端口所發(fā)送的數據是字符類型的,假設用來傳輸文件,那么會使用二進制的數據類型.當使用字符類型時,通常使用 ASCII碼,ASCII碼中8個位 形成一個字符.以實際的RS-232傳輸來看,由于大多數應用只是發(fā)送文字碼, 因此只要7個位就可以將ASCII碼的0-127號字符表達出來,所有的可見字符都 在這個范圍內,所以只要7個數據位就足夠了.不同的情況下,會使用到不同的 發(fā)送單位,但使用多少個位合成一個字節(jié)必須先行確定.3. 起始位及停止位由于異步串行通信中并沒有使用同步脈沖作為基準,故接收端完全不知道

5、發(fā)送端何時將進行數據的發(fā)送,而當發(fā)送端準備要開始發(fā)送數據時, 發(fā)送端會在 所送出的字符前后分別加上高電位的起始位邏輯0及低電位的停止位邏輯1, 它們分別是所謂的起始位和停止位.當發(fā)送端要開始發(fā)送數據時,便將傳輸在線 的電位由低電位提升至高電位,而當發(fā)送結束后,再將電位降至低電位.接收端 會因起始位的觸發(fā)因電壓由低電位升至高電位而開始接收數據,并因停止位的 通知因電壓維持在低電位而確切數據的字符信號已經結束.4. 校驗位的檢查為了預防錯誤的產生,因此使用校驗位作為檢查的機制;校驗位是用來檢查 所發(fā)送數據正確性的一種核對碼,其中又分成奇校驗位和偶校驗位兩種方式, 分 別是檢查字符碼中I的數目是奇數

6、或偶數.以偶校驗位為例,A的ASCII碼01100001 U進制,其中1的數目是三個,因此校驗位便是 1,使1的數目保持 偶數.2.系統(tǒng)整體設計2.1系統(tǒng)框圖2.2原理圖2.3管腳介紹:功能 管腳輸入/輸出功能RST輸入復位,初始化CLK輸入時鐘RXD輸入串行收引腳SK_RP輸入高電平為接收數據 低電平為發(fā)送數據BAUD8X輸出波特率*8TXD輸出串行發(fā)引腳SEG_EN輸出數碼管位選擇SEG_DATA輸出數碼管段選擇3.系統(tǒng)模塊設計3.1 分頻模塊通過本模塊要產生 8 X波特率的時鐘, FPGA開發(fā)板時鐘振蕩頻率為 50MHZ,因此要產生 9600*8的時鐘,分頻數為 50M/9600/8=3

7、25*2 ,本程序以 9600波特率為例,展開分頻.其余波特率依例可以選擇產生.3.11流程圖開始3.12程序PROCESS(clk,rst)-分頻得到8倍波特率的時鐘 BEGINSEG_EN<="11111110;IF ( rst = '1') THENDIV_BUF <= '0'div_REG<= "0000000000000000"ELSIF(clk'EVENT AND clk='1')THENIF (div_reg = div_par - "0000000000000001

8、") THEN-/FEN PIN SHU YI BAN QU FAN DIV_BUF<= NOT DIV_BUF ;-產生時鐘脈沖DIV_REG<="0000000000000000;ELSEdiv_reg <= div_reg + "0000000000000001"END IF;BAUD8X<=DIV_BUF ;END IF;END PROCESS;3.2 接收模塊3.21流程圖在進入收發(fā)模塊之前.在復位中進行初始化: 接收緩沖器RXD_BUF<="00000000"RXD_CNT<="

9、;0000" 接 收 計 數 器 RXD_START<="000"接收前級接收器 RXD_TXT <="00000000" 接收數據采 用移位設計,將數據傳進緩沖器. 每八個時欣對RXD取樣一次,存進RXD_TXT 中,比擬中間五次,假設五位數據一致,那么認為可以接受一位數據,送進RXD_BUF, 共接受八位數據.等八個時隙停止位,再進入接收初態(tài) .3.22程序/-/JIE SHOUELSIF (SK_RP='1')THENIF(RXD_CNT="0000")THENIF( RXD='0&

10、#39; )THEN-JIAN CE DAO XIA JIANG YAN WEI QI SHIWEIRXD_CNT<=RXD_CNT+"0001"END IF;ELSIF(RXD_CNT >= "0001" AND RXD_CNT<="1001")THEN-/JIE SHOUBA WEI SHU JUIF( RXD_START="111" )THEN-/BA GE SHI XIRXD_START<="000"RXD_CNT<=RXD_CNT+"0001&q

11、uot;IF(RXD_TXT(6 DOWNTO 1)="000000"ORRXD_TXT(6 DOWNTO 1 )="111111")THEN-/BA CI CAI YANG YI YANG SHI JIE SHOU YI WEI SHU JU;RXD_BUF(6DOWNTO )<= RXD_BUF(7DOWNTO 1); -/YI WEIRXD_BUF(7)<=RXD_TXT(7);-/JIESHOU DI YI WEIELSIF (RXD_CNT= "1010")THENRXD_START<="000&

12、quot;RXD_CNT<="0000"-/SHUJU CHOUYANGBUYI YANG ,RUO JIE SHOU ZUI HOU YI WEI ,QING LINGELSERXD_CNT<=RXD_CNT+"0001"END IF;ELSERXD_TXT(7)<=RXD;RXD_TXT(6DOWNTO0) <= RXD_TXT(7 DOWNTO1) ;-/CAI YANG BA CI,FANG JIN RXD_TXD SHU ZU ZHONG;RXD_START<=RXD_START+"001"EN

13、D IF;ELSEIF(RXD_CNT= "1010") THEN -/JIE SHOU TING ZHI WEIZHI WEI YOUDATA_B<=RXD_BUF;-/TINGXIAO ,JIANG SHU JU CUN RU DATA BUS;IF( RXD_START="110")THENRXD_START<="000"RXD_CNT<="0000"RXD_BUF<="00000000;ELSERXD_START<=RXD_START+"001"E

14、ND IF;END IF;END IF;END IF;3.3發(fā)送模塊3.31流程圖為實現收發(fā)保持同一時隙,每八個時隙發(fā)送一位數據,通過移位,把八位數 據發(fā)送出去.3.32程序/-/FASONG /ELSIF(DIV_BUF' EVENT AND DIV_BUF='1')THENIF (SK_RP='0')THENIF (TXD_CNT="0000")THEN -/QI SHI WEITXD<='0'TXD_CNT<=TXD_CNT+"0001"TXD_BUF<=DATA_B; -/

15、FA SONG DE SHU SONG JIN FA SONG HUN CHONG QIELSIF(TXD_CNT>= "0001" ANDTXD_CNT<="1000")THEN-FA SONGBA WEI SHU JUIF( TXD_START="111")THEN TXD_START<="000"TXD_CNT<=TXD_CNT+"0001"TXD<=TXD_BUF(0);-/DI YI WEI FA SONG TXD_BUF(6 DOWNTO 0 )<

16、= TXD_BUF(7 DOWNTO 1); -/YI WEIELSETXD_START<=TXD_START+"001"END IF;ELSEIF(TXD_CNT= "1001") THEN-/FA TING ZHI WEIIF( TXD_START="111")THENTXD_START<="000"TXD<='1'TXD_CNT<=TXD_CNT+"0001"ELSETXD_START<=TXD_START+"001"END

17、 IF;ELSEIF( TXD_START="110")THENIF(RST='0')THENTXD_START<="000"TXD_CNT<="0000"TXD_BUF<="00000000"END IF;ELSETXD_START<=TXD_START+"001"END IF;END IF;END IF;4 .系統(tǒng)調試4.1 時序調試分頻:波特率*8tfgMteTl-SEME 工Jij Lpikmi lnKBEanq |1IJ| J, Em3 卜 1山

18、 口山 卜 Wiormg 人、Ena 入a Fylsui.ftHRa.t-J7I:1TMl卻可TRef接收和顯示第迫 S££WU E| . liwiairan Hipml . LUton W«w?aa發(fā)送和顯示第 scnim -rfid4.2硬件調試管腳分配DirKlxnLoubonI/O BarkffifiF Group 1Starwiard腎 eserved19 BftUDSXGk/tputlVLVTTLfdefiadt)2 arEjjIPIN.231B1_NOIHLELMeAUU3r rstJnpPN_l«33.HLEL俄母用4*InputPffl

19、.iw2B2.NQ工MLELftte話網& SEG_0ATAOJOutpuGa&3_N13.J-VLVTTLid=h»d?)百<> 5EG3閩疝OutputWIJ123B3_N13 34 LEL 性能Jt)7& SEGaD*TA2|OutputPM/U3BJJMiiJ-VLvrn.(efefedyS3 SG_pATA3JOvlputP|M_1143_&3.N.1的叫gO SEG_P*TAMOutputpm_ii53B3JM13.5-¥LVTTLdefedy104# SEG_pATAqOiftpuGP1N_I1£3B3_N

20、13.J-¥LVTTL(de!fed?)11"jBSJWM卸 品5而i力OutputOulputPINJ173BJ_N13.3-VLVTTLfder)123J*工MLELfde總典133 SEtiR 皿Output3通jn3.3rVl¥TTL(deft!dG_EH1Output3B3_N1工 MLXmfcfeM曰1$2 SEGjNi2OutputPIN明q叼_片口3.HLVTTL(ifefedUulputP|N_1273BOIm 耕 lyttl 性 rug174* SEE -EWH1PIN_12S3叼JUXHurm 住IS0 SEG £M50OutputP1N_133313_ND3.3rVLVTTL(defT>dr)出SEG 上M®Ckrtput呻_必3

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論