桂林電子科技大學EDA實訓-交通燈控制電路的設計_第1頁
桂林電子科技大學EDA實訓-交通燈控制電路的設計_第2頁
桂林電子科技大學EDA實訓-交通燈控制電路的設計_第3頁
桂林電子科技大學EDA實訓-交通燈控制電路的設計_第4頁
桂林電子科技大學EDA實訓-交通燈控制電路的設計_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

桂林電子科技大學信息科技學院《EDA技術及應用》實訓報告學號1252310106姓名陳力指導教師:李德明2014年交通燈控制電路的設計1系統(tǒng)設計1.1設計要求設計任務用EDA實訓儀上的4只八段數(shù)碼管分別顯示道路東西和南北通行和禁止的倒計時時間。性能指標要求能設置道路東西和南北兩側(cè)通行和禁止的倒計時時間,最大設置時間為99秒,最小設置時間為1秒。交通燈用紅、綠、黃三種發(fā)光二極管〔LED〕顯示控制的結(jié)果。紅、綠、黃燈顯示的次序應符合實際交通道路控制的要求。1.2設計思路及設計框圖設計思路fpq是分頻器,將EDA實訓儀主板提供的20MHz的主頻經(jīng)20000000分頻后,得到電路所需的1Hz〔1秒〕時鐘。Rgwork和ywork是減法計數(shù)器,產(chǎn)生道路東西和南北通行和禁止的倒計時時間。Counter是控制電路,控制整個系統(tǒng)的工作??刂破鹘邮盏褂嫊r的結(jié)果,當?shù)褂嫊r歸0時,改變電路的控制模式,輸出倒計時的初始時間和交通燈亮滅控制信號。6輸入或非門和2輸入與非門組成了簡易密碼鎖的功能〔通過撥碼開關實現(xiàn)〕。總體設計框圖分頻器交通燈控制電路數(shù)碼管及LED燈2各個模塊程序的設計2.1分頻器模塊的設計分頻器模塊截圖:分頻器模塊程序設計:modulefpq(clk,newclk);inputclk;outputregnewclk;reg[24:0]counter;always@(posedgeclk)begincounter=counter+1;if(counter>=20000000)counter=0;if(counter<=10000000)newclk='b1;elseif(counter>10000000)newclk='b0;endendmodule2.2紅綠燈模塊設計紅綠燈模塊截圖:紅綠燈模塊程序設計:modulergwork(clk,clrn,ydbj,gzfs,LED,t1,t2,q1,q2);inputclk,clrn;input[7:0]q1,q2;outputregydbj;outputreg[1:0]gzfs;outputreg[7:0]LED;outputreg[7:0]t1,t2;reg[7:0]rtime,gtime,ytime,rtime1='h20,gtime1='h16;reg[1:0]z;initialbeginrtime='h20;gtime='h16;ytime='h03;ydbj=0;z=0;endalways@(posedgeclkornegedgeclrn)beginif(~clrn)ydbj=1;elsebeginif(q1==0||q2==0)ydbj=1;elsebeginydbj=0;rtime=rtime1;gtime=gtime1;endendendalways@(posedgeydbjornegedgeclrn)beginif(~clrn)begint1=rtime;t2=gtime;LED='b01100110;gzfs=2;z=0;endelsebeginz=z+1;case(z)0:begint1=rtime;t2=gtime;LED='b01100110;gzfs=2;end1:begint1=ytime;t2=ytime;LED='b00100010;gzfs=0;end2:begint1=gtime;t2=rtime;LED='b10011001;gzfs=2;end3:begint1=ytime;t2=ytime;LED='b10001000;gzfs=1;enddefault:begint1=rtime;t2=gtime;LED='b01100110;gzfs=2;endendcaseendendendmodule2.3黃燈模塊設計黃燈模塊截圖:黃燈模塊程序設計:moduleywork(gzfs,clk,clrn,q1,q2,LED_h);input[7:0]q1,q2;inputclk,clrn;input[1:0]gzfs;outputreg[3:0]LED_h;always@(posedgeclkornegedgeclrn)beginif(~clrn) LED_h='b0000; else begin if(gzfs==0) begin if(q1=='h03&&q2=='h03)LED_h='b1010; if(q1=='h02&&q2=='h02)LED_h='b0000; if(q1=='h01&&q2=='h01)LED_h='b1010; if(q1=='h00&&q2=='h00)LED_h='b0000; end if(gzfs==1) begin if(q1=='h03&&q2=='h03)LED_h='b0101; if(q1=='h02&&q2=='h02)LED_h='b0000; if(q1=='h01&&q2=='h01)LED_h='b0101; if(q1=='h00&&q2=='h00)LED_h='b0000; end endendendmodule2.4控制模塊的設計控制模塊截圖:控制模塊程序設計:modulecountor(ts,en,clk,ybj,t1,t2,q1,q2);inputclk,ybj,en,ts;input[7:0]t1,t2;outputreg[7:0]q1,q2;always@(posedgeclk^tsorposedgeybjorposedgeen)beginif(en)beginq1=q1;q2=q2;endelse begin if(ybj)beginq1=t1;q2=t2;end else begin if(q1==0)q1='h99; elsebeginq1=q1-1;end if(q1[3:0]>='ha)q1[3:0]=9; if(q2==0)q2='h99; elsebeginq2=q2-1;end if(q2[3:0]>='ha)q2[3:0]=9; endendendendmodule調(diào)試過程用QuartusⅡ軟件對程序編譯成功后下載到EDA試驗箱。LED開始亮,四個數(shù)碼管顯示3s倒計時,即黃燈開始進入閃爍狀態(tài),然后開始實現(xiàn)東西方綠燈,南北方紅燈狀態(tài)。綠燈倒計時結(jié)束以后黃燈再次閃爍,隨后進入南北方綠燈,東西方紅燈狀態(tài)。并不斷自動進行轉(zhuǎn)換。當S15撥到上方時,實現(xiàn)交通燈暫?!彩鼓芏俗饔谩?。當K8按鍵按下時,交通燈自動恢復到初始化狀態(tài)。當將S3,S2,S1,S0撥為1010并按下K7按鍵能實現(xiàn)減計數(shù)調(diào)時。4功能測試4.1測試儀器與設備EDA實訓箱、計算機一臺、QuartusⅡ軟件4.2性能指標測試根本實現(xiàn)要求,初始化南北方向為紅燈,東西方向為綠燈,倒計時20s,東西方向開始黃燈閃爍3秒,同時南北方向還為紅燈,3秒后東西方向變?yōu)榧t燈,南北方向變?yōu)榫G燈。倒計時的同時數(shù)碼管交替顯示不同亮燈的倒計時時間。實現(xiàn)4位數(shù)碼管顯示。撥碼開關S15實現(xiàn)暫停功能,S3到S0四個撥碼開關實現(xiàn)簡易密碼鎖功能〔當撥“1010”時,可以實現(xiàn)調(diào)時功能,密碼錯誤時那么無法實現(xiàn)調(diào)時功能〕。兩個按鍵K8,K7分別實現(xiàn)復位與調(diào)時功能〔調(diào)時功能在密碼正確情況下實現(xiàn)〕。5實訓心得體會這次實驗使我更進一步地熟悉了VHDL硬件描述語言的設計思想,同時通過對程序的調(diào)試也使自己對VHDL語言的語法,結(jié)構(gòu)和根本語句有了更深刻的了解。在設計較復雜數(shù)字電路系統(tǒng)時最好采用分層設計的方法,分為各個功能模塊,逐個進行仿真,最后通過頂層文件調(diào)用各個底層文件完成設計,程序也便于修改如程序要增加一些功能也只需參加相應的模塊即可。在設計的過程中還應該多聯(lián)系下實際情況,要了解實際情況下交通信號燈的工作情況,才能更好的完成此次的課程設計。在今后的工作和學習中,我們不能僅僅把目光停留在課本上,要多理論聯(lián)系實際。有的時候,理論上是正確的東西放到現(xiàn)實中去,可能由于種種因素的制約,并不能到達實際的效果,還需要我們進行相應的修改才能完成要求。這次的課程設計使我穩(wěn)固了以前學習到的知識,還使我掌握了以前沒有掌握的知識,同時鍛煉了自己的能力。6參考文獻【1】江國強.《新編數(shù)字邏輯電路》北京郵電大學出版社2006年12月【2】江國強.《EDA技術與應用》電子工業(yè)出版社2010年4月【3】王金明、冷自強.《EDA技術與Verilog設計》科學出版社2008年8月【4】謝自美.《電子線路設計·實驗·測試〔第二版〕》武漢華中科技大學出版社2000【5】譚會生、張昌凡《EDA技術與應用---VerilogHDL版》西安電子科技大學出版社附錄附錄1:仿真波形圖〔局部模塊〕分頻器模塊波形仿真:紅綠燈模塊波形仿真:黃燈模塊波形仿真:控制模塊波形仿真:附錄2:程序清單分頻器模塊程序設計:modulefpq(clk,newclk);inputclk;outputregnewclk;reg[24:0]counter;always@(posedgeclk)begincounter=counter+1;if(counter>=20000000)counter=0;if(counter<=10000000)newclk='b1;elseif(counter>10000000)newclk='b0;endendmodule紅綠燈模塊程序設計:modulergwork(clk,clrn,ydbj,gzfs,LED,t1,t2,q1,q2);inputclk,clrn;input[7:0]q1,q2;outputregydbj;outputreg[1:0]gzfs;outputreg[7:0]LED;outputreg[7:0]t1,t2;reg[7:0]rtime,gtime,ytime,rtime1='h20,gtime1='h16;reg[1:0]z;initialbeginrtime='h20;gtime='h16;ytime='h03;ydbj=0;z=0;endalways@(posedgeclkornegedgeclrn)beginif(~clrn)ydbj=1;elsebeginif(q1==0||q2==0)ydbj=1;elsebeginydbj=0;rtime=rtime1;gtime=gtime1;endendendalways@(posedgeydbjornegedgeclrn)beginif(~clrn)begint1=rtime;t2=gtime;LED='b01100110;gzfs=2;z=0;endelsebeginz=z+1;case(z)0:begint1=rtime;t2=gtime;LED='b01100110;gzfs=2;end1:begint1=ytime;t2=ytime;LED='b00100010;gzfs=0;end2:begint1=gtime;t2=rtime;LED='b10011001;gzfs=2;end3:begint1=ytime;t2=ytime;LED='b10001000;gzfs=1;enddefault:begint1=rtime;t2=gtime;LED='b01100110;gzfs=2;endendcaseendendendmodule黃燈模塊程序設計:moduleywork(gzfs,clk,clrn,q1,q2,LED_h);input[7:0]q1,q2;inputclk,clrn;input[1:0]gzfs;outputreg[3:0]LED_h;always@(posedgeclkornegedgeclrn)beginif(~clrn) LED_h='b0000; else begin if(gzfs==0) begin if(q1=='h03&&q2=='h03)LED_h='b1010; if(q1=='h02&&q2=='h02)LED_h='b0000; if(q1=='h01&&q2=='h01)LED_h='b1010; if(q1=='h00&&q2=='h00)LED_h='b0000; end if(gzfs==1) begin

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論