課程設(shè)計(jì)報(bào)告_第1頁(yè)
課程設(shè)計(jì)報(bào)告_第2頁(yè)
課程設(shè)計(jì)報(bào)告_第3頁(yè)
課程設(shè)計(jì)報(bào)告_第4頁(yè)
課程設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、業(yè) 級(jí) 號(hào) 名指導(dǎo)教師課程設(shè)計(jì)報(bào)告課程名稱數(shù)字系統(tǒng)與邏輯設(shè)計(jì)課題名稱交通燈控制電路設(shè)計(jì)通信工程0901200903020129葉羽喬匯東胡倩2011年7月9日when rly2=if cnt8 then y2v=T;rlv=T;-南北黃燈閃爍elsif cnt7 then y2=,0,;rl6 then y2=,r;rl5 then y24 then y2-T;rl3 then y2=,0,;rl2 then y2=,l,;rll then y2-0,;rl-lf;else y2=*r;rl=,r;init=49;if ov-V then n_state=glr2;else n_statea2

2、=,lf;r2- r;gl=, 1 ;initv=9;-東西黃燈閃爍if ov=!r then n_state=ylr2;else n_stateif cnt8 then yl v二T;r27 then yl=,0,;r26 then yl-T;r25 then yl4 then yl-T;r23 then yl-022 then yl-T;r2l then yl=,01;r2-T;else yl-T;r2-T;init=49;if ov=T then n_state=r lg2;else n_state=ylr2;end if;end if;end case;end process;計(jì)數(shù)模塊

3、該程序通過(guò)設(shè)計(jì)倒計(jì)數(shù)器來(lái)實(shí)現(xiàn)時(shí)鐘倒計(jì)數(shù)輸出。當(dāng)復(fù)位端reset=1時(shí),計(jì)數(shù) 器清0;Load一與上個(gè)模塊的ov 一樣ent一與上個(gè)模塊的init 一樣其實(shí)現(xiàn)的進(jìn)程代碼如下:pro3 :process(clk,rst)-倒計(jì)數(shù)beginif rst=!r then-設(shè)處置cnt=0;elsif clkfevent and elk=V thenif load=T then cnt=init;elsecnt=50 then 11 =H 10ln;t2=40 then tl=n 100n;t2=30 then tl=H011 n;t2=20 then 11 =n010n;t2= 10 then 11

4、=n001H;t2=50thentl=n101n ;t2=40thentl=n100n;t2=30thentl=n0Hn;t2=20thentl=n010n;t2=10then11 =001 ;t2=conv_std_logic_vector(cnt-l 0),4);else tl=n000n;t2numla=n0111111; numlbnumla=n0000110H;numlbnumla=n10110ir,;numlbnumla=n1001111n; numlbnumla=n1100110n; numlbnumla=n110110r,;numlbnull;end case;case t2

5、iswhenH0000n=num2a=H011111 ln; num2bnum2a=n0000110H;num2b=n0000110n;when”0010”二num2anum2a=n 1001111H; num2bnum2a=n 1100110n; num2bnum2av= 11011010; num2bnum2anum2anum2a=Hllllllln; num2b=nlllllHH;when” 1001 二num2a=110111; num2b= 110111;when others=null;end case;end process;三、系統(tǒng)調(diào)試與仿真在設(shè)計(jì)過(guò)程中回遇到大大小小的問(wèn)題及其

6、其解決方法。首先結(jié)束一個(gè)進(jìn)程或?qū)嶓w結(jié)構(gòu)體不要忘了結(jié)束語(yǔ)句,不然會(huì)出現(xiàn)錯(cuò)誤。Q Error (10500): VBDL syntax error at text.vhd(9) near text architecture; expecting end, or beginr or a declaration statement,Q Error (10396): VBDL syntax error at text.vhd(84): name used in construct must 旭毗 previously specified noe0 Error (10523): Ignored const

7、ruct text at text.vhd(4) due to previous errors . 圖3所以為保證程序完整不混亂結(jié)束語(yǔ)句是不能少的。然后再賦值語(yǔ)句是,兩邊的數(shù)據(jù)類型必須一致,否那么也會(huì)出錯(cuò)例如我先一個(gè)程序中的integer類型ent賦值給std_logic類型的t2;就 出現(xiàn)錯(cuò)誤了;Q Error (10327): VHDL error at text.vhd(93): cant determine definition of operator found 0 possible definitionsQ Error (10523): Ignored construct beha

8、v at text.vhd(15) due to previous errors圖4需要進(jìn)行 iee 的數(shù)據(jù)轉(zhuǎn)換函數(shù)轉(zhuǎn)換 t2=conv_std logic_vector (cnt-50), 4);還有就是在實(shí)體里面定義的in和out的輸入輸出端口,不能直接引用在進(jìn) 程里進(jìn)行賦值轉(zhuǎn)變。 Error (10028): Can*t resolve multiple constant drivers for net wtiniel5M at text.vhd(78)O Error (10029): Constant driver at text.vhd(89)Error: Canft elabora

9、te top-level user hierarchy:這就需要在結(jié)構(gòu)體里定義中間變量轉(zhuǎn)換,在要出入輸出的話,用將其中間變 量賦值給輸入輸出端口。最后就要注一些小問(wèn)題了,比方一個(gè)語(yǔ)句結(jié)束的分號(hào)不能丟尤其的if語(yǔ)句 等等。程序時(shí)序仿真用狀態(tài)機(jī)控制的各個(gè)燈得工作情況的仿真如下namenamerst g1 yi rl g2 y2 r220.53 ns R0.525 ns B 0;jiB 0!j!B 0:!;B 1B 1;!iB 0i;jB 0-圖6用倒計(jì)數(shù)器設(shè)計(jì)的時(shí)鐘倒計(jì)時(shí)仿真入下圖6用倒計(jì)數(shù)器設(shè)計(jì)的時(shí)鐘倒計(jì)時(shí)仿真入下elkB 0rstB 00 timelU 59Wl+1 time2U 49_rTL

10、n_n_rrTTn_n_n_n_r0DC町狂甌百魂由飛西0F附百;檄宣廣0(圖7如圖一直倒計(jì)時(shí)讓后回到初值在減BO n-TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT b o j . ;11111u 49用數(shù)碼管顯示的仿真如下_i用數(shù)碼管顯示的仿真如下_i1elkB 0n_n_n_run_n_n_n_n_n_n_n_n_n_n_n_n_n_rrstB 0國(guó) nwnla B 110110j j 1101101: j j mj j : niooiio j :)觸0011國(guó) num2a B 110111iiouiiXmii 嘛 oia m 琳 iiomi X1101101Xo

11、iiXiii”*。0 numlbB 110110ioiio)F; !1101101;! 取! !; uooiio !;)靴00”國(guó) num2b | B 110111noun乂11111殊。01米111嗽 iioiiii X : iioiioiX。1Xi ii ii*ooi J圖9最后總體時(shí)序仿真圖如下Namerst4 yi rlg2y2r20 timel國(guó) time2 0 numlb 國(guó) num2b 田 numla 田 num2a7.68 us10.24 usU 59一二。一 :0 二;U 49nL!o B 110110怫毓幀憶0000110 端型聃映 0000110oooouo ;數(shù)就 00

12、00110洲僦端B 110111加服業(yè)1。1 .:m1111101川山11。1zSB 110110靦meoooouoitot 0000110oooouo毋珊oooouoB 1101111111101Sfe 1111101:mm匯1111101 ;二曲痂圖10放大后為(上圖的一個(gè)循環(huán)中)圖11總結(jié)與體會(huì)這是我第一次用VHDL語(yǔ)言編程,我感觸最多的是思維的轉(zhuǎn)變。由于以往習(xí) 慣了用C語(yǔ)言編程,一開(kāi)始思維難以轉(zhuǎn)變過(guò)來(lái),很多時(shí)候都是在用C語(yǔ)言的思維 思考問(wèn)題,因而很多時(shí)候?qū)懗鰜?lái)程序的語(yǔ)法很多都不對(duì),甚至有些根本就不為 VHDL所支持。經(jīng)過(guò)這兩個(gè)星期的學(xué)習(xí)和實(shí)踐,我對(duì)用VHDL語(yǔ)言編程有了進(jìn)一步 的了解,

13、對(duì)VHDL的語(yǔ)法和C語(yǔ)言的語(yǔ)法有所區(qū)分。在這次課程設(shè)計(jì)過(guò)程中,我發(fā)現(xiàn)程序?qū)懼跋纫肭宄O(shè)計(jì)方案,然后得看 編程語(yǔ)言是否支持,假設(shè)支持那么要以最簡(jiǎn)便的方法去寫,方法簡(jiǎn)單,程序越易懂。 寫完程序要去運(yùn)行,找出錯(cuò)誤,分析結(jié)果。通過(guò)這次課程設(shè)計(jì),我進(jìn)一步加深了對(duì)電子設(shè)計(jì)自動(dòng)化的了解。并進(jìn)一步熟 練了對(duì)QuartusII軟件的操作。在編寫程序的過(guò)程中,遇到了很多問(wèn)題,使我發(fā) 現(xiàn)自己以前學(xué)習(xí)上存在的缺乏。通過(guò)與同學(xué)探討和請(qǐng)教老師,終于把問(wèn)題都解決 了,并加深了對(duì)交通燈原理和設(shè)計(jì)思路的了解。同時(shí)也掌握了做課程設(shè)計(jì)的一般 流程,為以后的設(shè)計(jì)積累了一定的經(jīng)驗(yàn)。做課程設(shè)計(jì)時(shí),先查閱相關(guān)知識(shí),把原 理吃透,確定一

14、個(gè)大的設(shè)計(jì)方向,在按照這個(gè)方向分模塊的把要實(shí)現(xiàn)的功能用流 程圖的形式展示。最后參照每個(gè)模塊把輸入和輸出引腳設(shè)定,運(yùn)用我們所學(xué)的 VHDL語(yǔ)言進(jìn)行編程??傊?,通過(guò)這次的設(shè)計(jì),進(jìn)一步了解了 EDA技術(shù),收獲很 大,對(duì)軟件編程、排錯(cuò)調(diào)試、相關(guān)儀器設(shè)備的使用技能等方面得到較全面的鍛煉 和提高。五、評(píng)分表計(jì)算機(jī)與通信學(xué)院課程設(shè)計(jì)評(píng)分表課題名稱:工程評(píng)價(jià)設(shè)計(jì)方案的合理性與創(chuàng)造性設(shè)計(jì)與調(diào)試結(jié)果設(shè)計(jì)說(shuō)明書的質(zhì)量辯論陳述與回答下列問(wèn)題情況課程設(shè)計(jì)周表現(xiàn)情況綜合成績(jī)教師簽名:日 期:附錄源程序清單library ieee;use ieee.std_logic_l 164.all;use ieee.std_logi

15、c_unsigned.all;use ieee.std_logic_arith.all;entity text isport (clk,rst:in std_logic;timel,time2:out integer range 0 to 59;numla:out std_logic_vector(6 downto 0);num2a:out std_logic_vector(6 downto 0);numlb:out std_logic_vector(6 downto 0);num2b:out std_logic_vector(6 downto 0);rl,r2,y 1 ,y2,g 1 ,g2

16、:out stdogic);end text;architecture behav of text istype state is(rlr2,rlg2,rly2,glr2,ylr2);signal n_state ,c_state:state;signal ent ,init:integer range 0 to 49;signal ov,load,a 1 ,a2: std_logic;signal tl:std_logic_vector(2 downto 0);signal t2:std_logic_vector(3 downto 0);湖南工程學(xué)院課 程設(shè)計(jì) 任務(wù)書課程名稱數(shù)字系統(tǒng)與邏輯設(shè)

17、計(jì)課 題一交通燈控制電路設(shè)計(jì)專業(yè)班級(jí)通信工程0901學(xué)生姓名學(xué) 號(hào)指導(dǎo)老師喬匯東 胡倩審 批喬匯東任務(wù)書下達(dá)日期2011年7月2日任務(wù)完成日期2011年7月9日beginprol :process(clk,rst)beginif rst=,rthen c state=rlr2;elsif clkevent and clk=thenc_state =n_state;end if;end process;pro2:process(c_state,ov)-狀態(tài)機(jī)beginrl=0;r2V=0;gl=0;g2=0;al=0;a2v=0;yl=0;y2rl- r;r2=*lT;init=49;if ov

18、=T then n_state=rlg2;else n stateal-r;rl=,r;g2-T;init=9;if ov=T then n_state=rly2;else n_stateif cnt8 then y2二T;rlv=T;elsif cnt7 then y26 then y2-r;rl5 then y2V=O;rlv= elsif cnt4 then y2-T;rl3 then y2v=0;rl2 then y2=*r;rll then y2-0*;rl-T;else y2=T;rl=T;init=49;if ov=T then n_state=glr2;else n_state

19、a2- r;r2=,r;gl=,r;init=9;if ov=T then n_state=ylr2;else n_stateif cnt8 then ylv=elsif cnt7 then yl-0*;r26 then yl v=l;r25 then yl=,0,;r24 then yl-T;r23 then yl2 then ylv=T;r2l then y l=O;r2二T;else ylv=T;r2=T;init=49;if ov=T then n_state=rlg2;else n_state=ylr2;end if;end if;end case;end process;pro3:

20、process(clk,rst)-倒計(jì)數(shù)beginif rst=fI* thencnt=0;elsif clkevent and clk=T thenif load二T then cnt=init;elsecnt=cnt-1;end if;end if;end process;ovv二Twhen cnt=0 else O;load=ov;timel=cnt+10 when al=Telse ent;time2=50 then 11 =n 101H ;t2=40 then tl=n100n;t2=30 then tl v=011 ”;t2V=conv_stdogic_vector(cnt-30)

21、,4);elsif cnt=20 then tl=H010H;t2=10 then 11 =n001H;t2=50thentl=n101n;t2=40thentl=nl 00 ;t2=30thentl=n0 lln ;t2=20thentl=n010n;t2=10thentl=n001 n;t2=conv_std_logic_vector(cnt-l 0),4);else tl=n000n;t2numla=n0111111; numlbnumla=,0000110H;numlbnumla=n10110ir,;numlbnumla=n1001111n; numlbnumla=n1100110n;

22、 numlbnumla=n110110r,;numlbnull;end case;case t2 iswhenn0000n=num2a=H0111111H; num2bnum2a=H0000110H; num2b=0000110”;when”0010二num2a= 1011011”; num2bnum2a=H 1001111H; num2bnum2anum2anum2a=H 1111101H; num2bnum2a=n0000111H; num2bnum2a=Hl 111111H; num2b=Hl 111111H;when 1001 二num2a= 110111 ; num2b101111

23、” ; when others二null;end case;end process;end behav;一、設(shè)計(jì)目的全面熟悉、掌握VHDL語(yǔ)言基本知識(shí),掌握利用VHDL語(yǔ)言對(duì)常用的的 組合邏輯電路和時(shí)序邏輯電路編程,把編程和實(shí)際結(jié)合起來(lái),熟悉編制和調(diào)試 程序的技巧,掌握分析結(jié)果的假設(shè)干有效方法,進(jìn)一步提高上機(jī)動(dòng)手能力,培養(yǎng) 使用設(shè)計(jì)綜合電路的能力,養(yǎng)成提供文檔資料的習(xí)慣和規(guī)范編程的思想。二、設(shè)計(jì)要求1、設(shè)計(jì)正確,方案合理。2、程序精煉,結(jié)構(gòu)清晰。3、設(shè)計(jì)報(bào)告5000字以上,含程序設(shè)計(jì)說(shuō)明,用戶使用說(shuō)明,源程序清單 及程序框圖。4、上機(jī)演示。5、有詳細(xì)的文檔。文檔中包括設(shè)計(jì)思路、設(shè)計(jì)仿真程序、仿

24、真結(jié)果及相應(yīng) 的分析與結(jié)論。三、進(jìn)度安排第二十周 星期一: 課題講解,查閱資料星期二:總體設(shè)計(jì),詳細(xì)設(shè)計(jì)星期三:編程,上機(jī)調(diào)試、修改程序星期四:上機(jī)調(diào)試、完善程序星期五:辯論星期六-星期天:撰寫課程設(shè)計(jì)報(bào)告附:課程設(shè)計(jì)報(bào)告裝訂順序:封面、任務(wù)書、目錄、正文 評(píng)分附件(A4大小的圖紙及程序 清單)。正文的格式:一級(jí)標(biāo)題用3號(hào)黑體,二級(jí)標(biāo)題用四號(hào)宋體加粗,正文用小四號(hào)宋體彳亍距為22o 正文的內(nèi)容:一、課題的主要功能;二、課題的功能模塊的劃分(要求畫出模塊圖);三 主要功能的實(shí)現(xiàn);四、系統(tǒng)調(diào)試與仿真;五 總結(jié)與體會(huì);六 附件(所有程序的原代 碼,要求對(duì)程序?qū)懗霰匾淖⑨專?;七、評(píng)分表。目 錄一、交

25、通燈控制電路的總體設(shè)計(jì)錯(cuò)誤!未定義書簽。交通燈電路設(shè)計(jì)錯(cuò)誤!未定義書簽?;驹O(shè)計(jì)思想錯(cuò)誤!未定義書簽。二、交通燈控制電路的功能實(shí)現(xiàn)錯(cuò)誤!未定義書簽。系統(tǒng)的總體框圖錯(cuò)誤!未定義書簽。程序流程圖錯(cuò)誤!未定義書簽。系統(tǒng)各功能模塊的實(shí)現(xiàn) 錯(cuò)誤!未定義書簽。 TOC o 1-5 h z 三、系統(tǒng)調(diào)試與仿真錯(cuò)誤!未定義書簽。四、總結(jié)與體會(huì)錯(cuò)誤!未定義書簽。五、評(píng)分表錯(cuò)誤!未定義書簽。附錄一、交通燈控制電路的總體設(shè)計(jì)交通燈電路設(shè)計(jì)一、問(wèn)題描述:交通燈的顯示有很多方式,如十字路口、丁字路口等,而對(duì)于同一個(gè)路口又 有很多不同的顯示要求,比方十字路口,車輛如果只要東西和南北方向通行就很 簡(jiǎn)單,而如果車子可以左右轉(zhuǎn)

26、彎的通行就比擬復(fù)雜,本實(shí)驗(yàn)僅針對(duì)最簡(jiǎn)單的南北 和東西直行的情況。二、功能要求:要完本錢實(shí)驗(yàn),首先必須了解交通路燈的燃滅規(guī)律。依人們的交通常規(guī),“紅 燈停,綠燈行,黃燈提醒”。其交通燈的燃滅規(guī)律為:初始態(tài)是兩個(gè)路口的紅燈 全亮,之后,東西路口的綠燈亮,南北路口的紅燈亮,東西方向通車,延時(shí)一段 時(shí)間后,東西路口綠燈滅,黃燈開(kāi)始閃爍。閃爍假設(shè)干次后,東西路口紅燈亮,而 同時(shí)南北路口的綠燈亮,南北方向開(kāi)始通車,延時(shí)一段時(shí)間后,南北路口的綠燈 滅,黃燈開(kāi)始閃爍。閃爍假設(shè)干次后,再切換到東西路口方向,重復(fù)上述過(guò)程。系統(tǒng)要求實(shí)現(xiàn)對(duì)2組交通燈控制信號(hào)的模擬輸出,其控制規(guī)律為如上所述, 同時(shí)要完成等待時(shí)間模擬的

27、輸出,即紅綠燈的持續(xù)時(shí)間倒數(shù)輸出。系統(tǒng)時(shí)鐘輸入 為一個(gè)IKHz的系統(tǒng)時(shí)鐘。.基本設(shè)計(jì)思想1時(shí)間脈沖可以直接賦予得到。2 60s、50s、10s定時(shí)信號(hào)用倒計(jì)時(shí),計(jì)時(shí)起始信號(hào)由控制流程電路給出, 每當(dāng)計(jì)滿所需時(shí)間,即向控制電路輸出“時(shí)間到”的信號(hào),并使計(jì)數(shù)器清零,由 控制電路啟、閉三色信號(hào)燈。3主控電路是核心,這是一個(gè)時(shí)序電路,其輸入信號(hào)為東西、南北方向:60s、50s、10s定時(shí)信號(hào),其輸出狀態(tài)控制相應(yīng)的三色燈。4三種燈轉(zhuǎn)換狀態(tài)表:時(shí)間059-109-049-09-059-109-0東西紅紅紅綠黃紅紅時(shí)間049-09-059-109-049-09-0南北紅綠黃紅紅綠黃其狀態(tài)轉(zhuǎn)換思想是首先置初始

28、狀態(tài),東西南北兩個(gè)時(shí)鐘都為0,燈得狀態(tài)都 為紅燈,讓后開(kāi)始倒計(jì)時(shí),其中東西時(shí)鐘從59秒開(kāi)始倒計(jì)時(shí),燈狀態(tài)為紅燈, 南北時(shí)鐘從49秒開(kāi)始倒計(jì)時(shí),燈得狀態(tài)為綠燈;然后當(dāng)南北時(shí)鐘從49倒計(jì)時(shí)到 0時(shí),其燈的狀態(tài)變?yōu)辄S燈閃爍,是從又開(kāi)始從9開(kāi)始計(jì)時(shí),此時(shí)東西時(shí)鐘的時(shí) 間也從59秒倒計(jì)時(shí)到9,但燈的狀態(tài)還是紅燈,此時(shí)兩個(gè)路口的時(shí)鐘同時(shí)從9 秒倒計(jì)時(shí)到0。,然后東西燈狀態(tài)變?yōu)榫G燈,南北燈狀態(tài)變?yōu)榧t燈,然后東西時(shí) 鐘從59秒倒計(jì)時(shí),南北時(shí)鐘從49倒計(jì)時(shí),等南北倒計(jì)時(shí)到0,燈狀態(tài)變?yōu)辄S燈, 此時(shí)東西時(shí)鐘倒計(jì)時(shí)到9狀態(tài)不變,在兩個(gè)時(shí)鐘同時(shí)從9倒計(jì)時(shí)到0,南北燈變 為紅燈,東西燈有變成綠燈,就這樣一直循環(huán)先去,就是3種燈得狀態(tài)轉(zhuǎn)換。二、交通燈控制電路的功能實(shí)現(xiàn)2.1 v系統(tǒng)的總體框圖交通燈 控制模塊 (L7 Ri計(jì)數(shù)模塊顯示模塊該系統(tǒng)總體包括其3個(gè)模塊,一個(gè)是利用狀態(tài)機(jī)對(duì)兩個(gè)路口燈得

溫馨提示

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

評(píng)論

0/150

提交評(píng)論