




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、fpga串口 rs232的設計,該模塊rs232的波特率為9600,其模塊結構框閣如下閣示:rs232_rx(中 u . 接設鏌塊fifotestthmicii (測模塊)rs232_tx(p|i(l 發(fā)ii模塊)n.k_tfi_r3232rs2s2_clk <?hu#格波格牟時鐘>設計模塊功能描述:testbench(測試模塊模擬pc機串口信號發(fā)送和接受設備,首先向rs232接收端發(fā)送 串口數(shù)據(jù)信息,然后通過rs232接收端來接收rs232發(fā)送端的數(shù)據(jù)信息。rs232_rx(串口接收模塊):通過接受來自testbench的串行數(shù)據(jù)信息,并存入到fifo巾。 rs232_tx(串口
2、發(fā)送模塊):通過讀取fifo的有效數(shù)據(jù)t小志位wrusedw,來判斷fifo中是否還有數(shù)據(jù)需要發(fā)送。如有,則繼續(xù)讀取fifo屮的數(shù)據(jù)信息,并發(fā)送出去。rs232_clk (串口時鐘):提供rs232需要時鐘,規(guī)定rs232通信波特率。fifo (ip核模塊):調(diào)用的為altera的ip核模塊,主要用于rs232接收,發(fā)送數(shù)據(jù)的存儲和緩沖作用。以下為模塊設計代碼:123456789/ / / / jr z < z z-*遶f<*<4*秦««*嘸壽曲4««/深®32 的 fifo 里,/將教據(jù)發(fā)送出去."“btimesc
3、ale ins/lnsit8b推入數(shù)存 2sv. 發(fā)歎 pc受 擬接 模將授受試鏤測ve el sec 2 r 23過 rs通t過通后然/8901234567890123456789012345678901234567890111222222222233333333334444444444555555555565b.o©noduletsetjoench;eg clksos,rst;egack;eg(2:0state;gp:o】data一reg;egrx;egflag一3tx;eg3:0】count;eg13:0cnt;wirerdexpty wr_full;paraseteridle
4、3.bo01,start =3.fc01o,stop3.bloo;initialbeginclksoa二0; rst 1;#10 rsto;50 rst二1;endalways #10 clk50s clk50a; initialbeginrepeat(20)beginflagtr 1; data_reg 8 *he4;(posedge ack)data_rcg 8*h01;(posedge ack); data_reg srando:”2s6;(posedge ack);/ data_reg=srandom%256;/9(posedge ack);end/sszop;flagstr 0; e
5、ndalways (posedge clk50s) /initialbegin x£c rst)begin cntr0; count=0; ack=0; rx 1;state=idle:endahdcd2 3 4 5 6 7 8 666666一 曰 白" 卜 白 一卜s> £dq 9o123456789o123456789o1234s6789 67 77777777 788866888889999999999lit0 12 3 4 o o o o o 1 i 1 1 10 1 2 3 4 5oc xf(flag_3tr)begincase(9tate)idl
6、e:begin cnt 0;rx:0;state<=start;endstart:l£(cnc 5027) begincnt:0;rx data_reg【7j; data一reg data一reg i; x£(count 8)begin count 0; state stop; z/ack=l;endelsebegincount count 1;/ ack=0;endendelsebegincnt cnt l;/ack=0;endstop:beginl£(cnt 5027) begincnt 0;state :=idle; ack 0;endelsebegi
7、ncntcnt-1; rx 1; ack=l;endendendcaseendtop top ( clk5cte(clk5oao, .rst(rst),rxd(rx),.txd(tx),.rdeapty(rdeapty), wr full(wr full)duletestbench(測試模塊)1/rs232頂*慎塊modulers232 top(clk50n,rst, rxd, txd,| rdempty, wr_full );input clk50s,rst; input rxd; outputtxd;outputrdempty,wr_full;wirerd_req;wirewr_req;w
8、ire(7:0) fifo_in; wire7:0) fifo_out; wireelk, elk一r;wireaclr;wire(4:0) fifo_word; /parameter / fifo_in=8fh27;/wire rdempty,wr 一 f ull; assign aclr" rst;901234567890123456789012345678901234567233333333334444444444555555555566666666rs232_clk rs232clk(.clk50n<clk50n>, .rst(rst)r elk(elk),clk
9、_r(clk_r)ra232_tx transmit( elk(elk).rat(rst),txd(txd>,.data in(fifo out)rcm.fifo_word (fifo_word) r f ifo_rd_req (rd_req)ra232_rx receive ( txjc (rxd),clkr(elk 一r>,.rst (rst),data(fifo_in)r.fifcwzzeq(wr_req)£l£o fifo ( aclr(aclz), .data(fifo_in), rdclk(elk),.rdreq(rd_req),.wrclk(clk
10、_r),wrreq(wr_req),q(fifo_out)f rdeaty(rdempty), wrusedw(fifo_woid)r .wrfull(wr full) endmoduletop頂層設計模塊1123456789012345678901234567890123456111111111122222222223333333/"/rs232時鐘clock 9600hz/ pc txd wave:/pc_txi idle i->statr=0<-1/sample elk:/ /(2,data nr/z/istop=lidle n/l_l i 一i 匕/attenti
11、on:/use the 9600*2 (hz) clock,and sample the pc_tx information/at the second positive edge in receive model,we can get the/relative accurate pc tx data*曰 modulers232 clk(clkson, rst, elk, clk_r );input clk50nsz rst;output elk,clk_r;reg clk_r, elk;reg【ll:0】 cnt_r;always:(posedge clk50ff.negedge rst)
12、beginifrst) begincnt_r<=l; clk r<: 3;endelsebeginif(cnt_r 1257)/9600bps*2->5028/2r system clock 50kh2 beginr<- clk_r;r<=l;46 -r = ent r 1;elk r,negedge rst,/1 /廣2 /3/磉日 mohkil«sils232療受慣塊ra232 r»pc olk戴,r»e.d纛t.fxfo wrinputinpxaouepueclk_x tx-po; fxfo mrr»toutput 1
13、7 0) d<e«blwaye<n«g«dge oik l>«9xnxf ( r»x>imxoent 0 ;f x fowrr«q *o;ciaa 了hoo- * hoo;zdle;endel>ecax2<11鬌1bwgxnnegedge roe)u*b«9in xf(on t>wgxn1>one- 0;bxel/會ndk>«9xnone one l; >a«< zx« ndkxgxn ndcxfwrr«q<&qu
14、ot; 0; nd k»xx tkxxnxf <ont 1>fe«gxnonek»a.鼇 _扇t巍tf-o/(o jndw麝瞻k>«9xnoneenz1; t應,:c k>xl ; nd ndbx2skiexnxf <on1>onc*ojblx- t纛,.r«9(ll:嚳bxe3;tm _po/pc»nd ndk>«9xn ene麕t龜t會ndcne1; bxc2;*/xte rl.e -?0 kle -rr±te e txte ro r- ?e -h=0k>x3 :
15、if(on 1> fexyxnon o bxe_r«g(21bx4ndtm _pcixxnnc one x /eae* bxe3.nd v bie4 afex<xn>£(en 1>bwfxnsnt 0bxvre(j_pc d* bxc5end x0«k>«9xnone on*x/ bie4nd «mi bx5 :xf cent k>wgxn ent bn,st 龜 teend 1著begin one-t囑ndbxe<;axn xr tcnc k>«gxntxlk>x轚7 .xf &
16、lt;cnt be&n ont bxx>reg|<l< bx-1;:»o;bn7cm bxva ndlsekx$|xnent ettt 1; t“耆 bx<nd#e« ndx>ojbx*;”?hs:2:2nss>0白 卜 <d 二 二i j;:il>3;:n:n:endb«xv>ent cat1/會滅 v» bxcb :篡 axf <oat 1> b«$imonce1 of著 acop;nd 1廖著k>«5|xnone< ene1;麝t蠢t曹 bx8
17、 nd nd top .b«$|inxfxccone -1> bepxnene<mo/idle;aat麝 < bxr«g; fxfowr鬱夂 <*1; nd x««bwxnon onx n<iixgxn t暴t著 爨top;/ f i f *一w r 一r c|< 1 jnddefault廖鮝 idle;»ndc屬鏞indndmoduleknpueelk,rut:npu(7:0) data xnmpu ( 4 10)fxfowordf x £o_r<4_,#/oupurd_clk;dutput
18、txd;"-«9£ x f 0一rd一req :-9一.;-«9reovack ;r«g;e9(7:o)dat«_2:eg;cx£o."jeg(9:0)蘑之惠t會;z«9(7:o)nopcm./rego:o1nopxdle;par<mee是ssr入有飲播.來校刪發(fā)送塊犮送教攜nodule r*a232 tx451感b910ixxa131415 x< 17 10 1鴦 20 21 222324 2魯 2< 27 262930蠡ckf x f o 一condx non f xfo_nop f
19、xfo_req rdfxfo waxeack r«»«rc par<m<«r :/ xaxcbxel bxc2 bxe3 k>x4 bxc5 bx6 bxc7 bx8廖topasxniq>o白5qr9«d9« x9z 0/oik.r蘑t,exd.d纛 m一 xn.fifo一 word, fxfo rd req» b00_0001< b00_0010. i*b00_0100, ,1>oo 二 1ooo.二oooo,;10*0000;一 ioboo00000000. 10*boo_oooo_o
20、oox. io* booogoo 一003.0, x0* boo二0000二01oo,10、00二0000:1000, lcvboo二ogo 廣 oooo, 10* tooo 二0010:0000.10 bo0二01oo二oooo, i 0 k>00二 1 goo二oo00,10 ao 1 二0000:0000, xo'fel。二 oooo 二 oooo,= 10*boo cx>oo oogo;txd bxre; (n<9«dg« elk(? r>> b«9xnfxfordr«q *oj0/d>a_r«9<
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 體育交流合同范本
- 2024年中國太平洋人壽保險股份有限公司招聘筆試真題
- 買賣物品合同范本
- 2024年內(nèi)蒙古興安盟實驗高中教師招聘考試真題
- 2024年納雍縣鴿子花農(nóng)業(yè)有限公司招聘考試真題
- 農(nóng)夫山泉公司勞動合同范本
- 創(chuàng)業(yè)投資協(xié)議合同范本
- 2024年河南省黃河科技學院附屬醫(yī)院招聘考試真題
- 公司系統(tǒng)服務合同范本
- 全體村民土地流轉合同范本
- 慢性胰腺炎病教學查房
- 中考英語復習閱讀理解-主旨大意題、推理判斷題
- 電解質溶液的圖像分析(原卷版)-2025年高考化學一輪復習講義(新教材新高考)
- 2025年中考歷史一輪復習知識清單:隋唐時期
- 【生物】蒸騰作用- 2024-2025學年七年級上冊生物(北師大版2024)
- 摩根大通金融科技支出
- 《井巷掘進作業(yè)》課件
- 銀行保安服務 投標方案(技術方案)
- 《TCPIP協(xié)議基礎》課件
- 2019年大學學術規(guī)范測試版題庫500題(含標準答案)
- 農(nóng)村砍樹賠償合同模板
評論
0/150
提交評論