道路交通燈控制器的設(shè)計(jì)EDA課程設(shè)計(jì)報(bào)告書(shū)_第1頁(yè)
道路交通燈控制器的設(shè)計(jì)EDA課程設(shè)計(jì)報(bào)告書(shū)_第2頁(yè)
道路交通燈控制器的設(shè)計(jì)EDA課程設(shè)計(jì)報(bào)告書(shū)_第3頁(yè)
已閱讀5頁(yè),還剩21頁(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、探2008級(jí)學(xué)生EDA課程設(shè)計(jì)探 探 探 探 探 探EDA課程設(shè)計(jì)報(bào)告書(shū)課題名稱(chēng)交通燈控制器的設(shè)計(jì)姓名胡偉明學(xué)號(hào)0812201 -46院系物理與電信工程系專(zhuān)業(yè)電子信息工程指導(dǎo)教師周來(lái)秀講師2011年6月10日一、設(shè)計(jì)任務(wù)及要求:(1 )十字路口東西、南北兩個(gè)方向的紅、黃、綠燈的指示狀態(tài)。用 LED燈表示當(dāng) 前的交通狀態(tài)。(2) 能實(shí)現(xiàn)正常的倒計(jì)時(shí)功能。用兩組七段數(shù)碼管倒計(jì)時(shí)顯示當(dāng)前交通狀態(tài)剩余秒數(shù)。(3) 該交通燈的亮滅順序如下:東西綠燈40秒黃燈5秒東西紅燈25秒南北紅燈45秒南北綠燈20秒黃燈5秒(4 )能實(shí)現(xiàn)特殊狀態(tài)的功能。例如消防車(chē)、救護(hù)車(chē)或其他需要優(yōu)先放行的車(chē)輛通過(guò)時(shí)實(shí)現(xiàn)下列功能:

2、按下特殊狀態(tài)鍵后,能實(shí)現(xiàn)特殊狀態(tài)功能; 顯示倒計(jì)時(shí)的兩組數(shù)碼管閃爍; 計(jì)數(shù)器停止計(jì)數(shù)并保持在原來(lái)的狀態(tài); 東西、南北路口均顯示紅燈狀態(tài); 特殊狀態(tài)解除后能繼續(xù)計(jì)數(shù);(5)能實(shí)現(xiàn)總體清零功能。按下清零鍵后,系統(tǒng)實(shí)現(xiàn)總體清零,計(jì)數(shù)器由初始狀態(tài)計(jì)數(shù),對(duì)應(yīng)狀態(tài)的指示燈亮。(6 )用VHDL語(yǔ)言設(shè)計(jì)符合上述要求的交通燈控制器,并用層次化設(shè)計(jì)方法設(shè)計(jì)該電路。指導(dǎo)教師簽名:年 月日T、指導(dǎo)教師評(píng)語(yǔ):指導(dǎo)教師簽名:年 月 日二、成績(jī)驗(yàn)收蓋章年 月 日交通燈控制器的設(shè)計(jì)1 設(shè)計(jì)目的通過(guò)設(shè)計(jì)交通燈控制器,了解 EDA 技術(shù),了解并掌握 VHDL 硬件描述語(yǔ) 言的設(shè)計(jì)方法和思想,鞏固和綜合運(yùn)用所學(xué)過(guò)的 EDA 原理

3、知識(shí),提高分析、 解決實(shí)際問(wèn)題的獨(dú)立工作能力。2 設(shè)計(jì)的主要內(nèi)容和要求交通燈控制器的設(shè)計(jì), 設(shè)計(jì)了主干道的交叉路口交通信號(hào)燈無(wú)人自動(dòng)管理的 控制系統(tǒng)。將路口紅綠燈的各種亮燈情況定義不同的狀態(tài) ,路口狀況定義為觸發(fā) 條件,組成有限狀態(tài)機(jī)。交通控制器能完成以下功能:1 能顯示十字路口東西、南北兩個(gè)方向的紅、黃、綠燈的指示狀態(tài),用兩組紅、 黃、綠三色 LED 燈作為兩個(gè)方向的紅、黃、綠燈;2 南北向?yàn)橹鞲傻?,每次通行時(shí)間為 45S ,東西向?yàn)橹Ц傻?,每次通行時(shí)間為 25S ;3 能實(shí)現(xiàn)正常的倒計(jì)時(shí)功能,用兩組數(shù)碼管作為東西、南北向的倒計(jì)時(shí)顯示。 其中,黃燈: 5S 。4 能實(shí)現(xiàn)特殊狀態(tài)的功能。按下

4、SP 鍵后,能實(shí)現(xiàn)以下特殊功能:(1)顯示倒計(jì)時(shí)的兩組數(shù)碼管閃爍;(2)計(jì)數(shù)器停止計(jì)數(shù)并保持在原來(lái)的狀態(tài);(3)東西、南北路口均顯示紅燈狀態(tài);(4)特殊狀態(tài)解除后能繼續(xù)計(jì)數(shù);5. 能實(shí)現(xiàn)全清零功能。 按下 reset 鍵后,系統(tǒng)實(shí)現(xiàn)全清零, 計(jì)數(shù)器由初狀態(tài)計(jì)數(shù),對(duì)應(yīng)狀態(tài)的指示燈亮;6. 用VHDL語(yǔ)言設(shè)計(jì)上述功能的交通燈控制器,并用層次化方法設(shè)計(jì)該電路;7. 仿真、驗(yàn)證設(shè)計(jì)的正確性。3 整體設(shè)計(jì)方案3.1 方案分析通過(guò)分析課程設(shè)計(jì)的要求可以知道,所要設(shè)計(jì)的交通信號(hào)燈控制電路要能 夠適用于由一條主干道和一條支干道的匯合點(diǎn)形成的十字交叉路口,其主要功 能是:主干道處于常允許通行的狀態(tài),支干道有車(chē)來(lái)

5、時(shí)才允許通行;當(dāng)支干道 沒(méi)有車(chē)通行時(shí),主干道亮綠燈,而支干道亮紅燈,主、支干道的倒計(jì)時(shí)數(shù)碼管 不顯示數(shù)字;當(dāng)支干道有車(chē)通行時(shí),進(jìn)入了主干道和支干道交替通行的情況。當(dāng)進(jìn)入到交替通行時(shí),主干道每次放行 45 秒,支干道每次放行 25 秒。首 先主干道通行 45 秒,并且主干道顯示 45 秒的倒計(jì)時(shí),此 45 秒內(nèi)主干道亮綠 燈,當(dāng) 45 秒計(jì)時(shí)結(jié)束,主干道亮黃燈 5 秒,而且顯示 5 秒倒計(jì)時(shí),用于綠燈 轉(zhuǎn)為紅燈作為過(guò)渡,使行駛中的車(chē)輛有時(shí)間停到禁行線外,在主干道亮綠燈和 黃燈的 50 秒內(nèi),支干道亮紅燈 50 秒,而且支干道顯示 50 秒的倒計(jì)時(shí)。 然后, 當(dāng)支干道亮紅燈 50 秒結(jié)束時(shí),主干道

6、由黃燈轉(zhuǎn)為紅燈,并且主干道的紅燈亮 30 秒,顯示 30 秒的倒計(jì)時(shí),在此過(guò)程中,支干道先亮綠燈 25 秒,顯示 25 秒的倒計(jì)時(shí), 25 秒過(guò)后綠燈轉(zhuǎn)為黃燈,而且黃燈亮 5 秒,顯示 5 秒倒計(jì)時(shí), 用于綠燈轉(zhuǎn)為紅燈作為過(guò)渡,使行駛中的車(chē)輛有時(shí)間停到禁行線外。支干道通 行結(jié)束后,主干道通行,以此交替。3.2 方案狀態(tài)機(jī)控制設(shè)計(jì)將十字路口分成東西走向和南北走向的主干道和支干道。交通燈的工作明顯可以分成 5 個(gè)狀態(tài),如下表 3.1 所示:表3.1工作狀態(tài)表支干道是否有車(chē)狀態(tài)實(shí)現(xiàn)功能支干道沒(méi)車(chē)St0支干道亮紅燈,主干道亮綠燈,數(shù)碼管不顯示。支干道有車(chē)St1主干道亮綠燈 45秒,數(shù)碼管顯示 45秒倒

7、計(jì)時(shí);支干道亮紅燈,數(shù)碼管顯示從49秒倒計(jì)時(shí)到05秒。St2主干道亮黃燈5秒,數(shù)碼管顯示5秒倒計(jì)時(shí);支干道 亮紅燈,數(shù)碼管顯示從 04秒倒計(jì)時(shí)到00秒。St3支干道亮綠燈 25秒,數(shù)碼管顯示 25秒倒計(jì)時(shí);主干道亮紅燈,數(shù)碼管顯示從29秒倒計(jì)時(shí)到05秒。St4支干道亮黃燈5秒,數(shù)碼管顯示5秒倒計(jì)時(shí);主干道亮紅燈,數(shù)碼管顯示從 04秒倒計(jì)時(shí)到00秒。3.3整體設(shè)計(jì)方案根據(jù)交通燈控制器的功能與要求,可以把整體設(shè)計(jì)分為三個(gè)模塊:分頻模塊,把2kHz的頻率分成1Hz,1Hz用于倒計(jì)時(shí)計(jì)數(shù)的時(shí)鐘信號(hào),而 2kHz則可以用于數(shù)碼管掃描顯示的片選時(shí)鐘信號(hào);交通燈控制及倒計(jì)時(shí)(五個(gè)狀態(tài)的控制)模塊;數(shù)碼管譯碼

8、掃描顯示模塊。整體的系統(tǒng)框圖如圖3.1所示:圖3.1系統(tǒng)框架圖分頻模塊就是把輸入的2kHz時(shí)鐘頻率2000分頻得到1Hz的頻率用于數(shù)碼管倒計(jì)時(shí)的時(shí)鐘信號(hào),其原理就是設(shè)計(jì)一個(gè)0到999循環(huán)計(jì)數(shù)的的計(jì)數(shù)器,當(dāng)計(jì)數(shù)溢出,即計(jì)數(shù)到999時(shí)使輸出量取反,則輸出為0.5秒的高電平和0.5 秒的低電平交替出現(xiàn),就得到了 1Hz的方波,作為秒倒計(jì)時(shí)的時(shí)鐘信號(hào)。交通燈控制及倒計(jì)時(shí)模塊就是五個(gè)狀態(tài)的轉(zhuǎn)換模塊,是整個(gè)系統(tǒng)的核心模塊,其五個(gè)狀態(tài)分別 st0、st1、st2、st3、st4。其中st0是當(dāng)支干道沒(méi)有車(chē) 通行的狀態(tài),st1是主干道綠燈亮45秒的狀態(tài),st2是主干道亮黃燈5秒的狀 態(tài),st3是支干道亮綠燈2

9、5秒的狀態(tài),st4是支干道亮黃燈5秒的狀態(tài)。當(dāng)主 干道亮綠燈和黃燈時(shí),支干道都是亮紅燈,當(dāng)支干道亮綠燈和黃燈時(shí),主干道 都是亮紅燈,并且主、支干道都會(huì)顯示亮燈的倒計(jì)時(shí)時(shí)間,主、支干道的紅黃 綠燈用六個(gè)LED發(fā)光二極管代替。五個(gè)狀態(tài)圖如下圖3.2所示:圖3.2狀態(tài)圖數(shù)碼管倒計(jì)時(shí)顯示,是用四個(gè)一體的數(shù)碼管,分別表示主干道和支干道的秒倒計(jì)時(shí),所以是動(dòng)態(tài)掃描顯示,掃描的頻率直接用2KHz的輸入時(shí)鐘頻率。4軟硬件電路的設(shè)計(jì)4.1各模塊的原理及其程序時(shí)鐘模塊設(shè)計(jì)時(shí)鐘分頻模塊就是把輸入的2kHz時(shí)鐘頻率2000分頻得到1Hz的頻率用 于數(shù)碼管倒計(jì)時(shí)的時(shí)鐘信號(hào),其原理就是設(shè)計(jì)一個(gè)0到999循環(huán)計(jì)數(shù)的的計(jì)數(shù) 器

10、,當(dāng)計(jì)數(shù)溢出,即計(jì)數(shù)到999時(shí)使輸出量取反,則輸出為0.5秒的高電平和 0.5秒的低電平交替出現(xiàn),就得到了 1Hz的方波,作為秒倒計(jì)時(shí)的時(shí)鐘信號(hào)。時(shí)鐘分頻模塊生成的元件符號(hào)如下圖4.1所示:' div!Clk2kli2 elklhzTnhj inaOJ= r is i 1. i n ninr-iirurwn!tbmrad圖4.1時(shí)鐘分頻模塊clk2khz 是頻率為為2khz的輸入時(shí)鐘信號(hào),clk1hz是經(jīng)過(guò)2000分頻后得到的頻率為1hz方波的輸出信號(hào)。交通燈控制及計(jì)時(shí)模塊此模塊是整個(gè)系統(tǒng)的核心部分,主要功能是完成五個(gè)狀態(tài)的轉(zhuǎn)換,并且在 每個(gè)狀態(tài)里完成相應(yīng)的控制作用,即控制主干道和支干

11、道的紅黃綠燈的點(diǎn)亮和 各自數(shù)碼管倒計(jì)時(shí)顯示。編程時(shí)主要是用一個(gè)進(jìn)程語(yǔ)句,其敏感信號(hào)是時(shí)鐘分頻模塊產(chǎn)生的1Hz時(shí) 鐘信號(hào),進(jìn)程里主要用 case語(yǔ)句完成五個(gè)狀態(tài)的控制,在每個(gè)狀態(tài)里要控制 主干道和支干道的紅黃綠燈的點(diǎn)亮,而且要控制各自數(shù)碼管倒計(jì)時(shí)的顯示,并 為掃描顯示譯碼模塊提供倒計(jì)時(shí)時(shí)間,同時(shí)要使每個(gè)狀態(tài)結(jié)束時(shí)能順利進(jìn)入下 一個(gè)狀態(tài)。五個(gè)狀態(tài)及相應(yīng)的功能是:StO,支干道亮紅燈,主干道亮綠燈,數(shù)碼管 不顯示;St1,主干道亮綠燈45秒,數(shù)碼管顯示45秒倒計(jì)時(shí);支干道亮紅燈, 數(shù)碼管顯示從49秒倒計(jì)時(shí)到05秒;St2,主干道亮黃燈5秒,數(shù)碼管顯示5 秒倒計(jì)時(shí);支干道亮紅燈,數(shù)碼管顯示從 04秒倒

12、計(jì)時(shí)到00秒;St3,支干道 亮綠燈25秒,數(shù)碼管顯示25秒倒計(jì)時(shí);主干道亮紅燈,數(shù)碼管顯示從 29秒 倒計(jì)時(shí)到05秒;St4,支干道亮黃燈5秒,數(shù)碼管顯示5秒倒計(jì)時(shí);主干道 亮紅燈,數(shù)碼管顯示從04秒倒計(jì)時(shí)到00秒。狀態(tài)轉(zhuǎn)換條件參照?qǐng)D3.2。此模塊生成的元件符號(hào)如下圖4.2所示:t 曰 1“* elk 1 h-7cartanl 3|T-:口 rue二門(mén).Ci|Cl-:r_by_lat :L :l_«r-r "sr圖4.2交通燈控制及計(jì)時(shí)模塊clklhz是分頻模塊輸出的1Hz的時(shí)鐘信號(hào),car是支干道是否有車(chē)的判 斷信號(hào), one1 、ten1 、one2 、ten2 分別

13、是主干道倒計(jì)時(shí)的個(gè)位和十位,支干 道倒計(jì)時(shí)的個(gè)位和十位。 r_a 、g_a、y_a、r_b 、g_b、y_b 分別是主干道和支 干道的紅、綠、黃燈控制信號(hào)。掃描顯示譯碼模塊此模塊中含有七段數(shù)碼管譯碼和掃描顯示兩個(gè)部分。七段譯碼可以使用case語(yǔ)句,將數(shù)碼管要顯示的數(shù)譯成對(duì)應(yīng)的七位二進(jìn)制數(shù),用來(lái)控制數(shù)碼管的 a、b、c、d、e、f、g的導(dǎo)通。主干道和支干道倒計(jì)時(shí)要用到 4個(gè)數(shù)碼管,且 是四位一體的,則要使用掃描顯示的方法:設(shè)計(jì)一個(gè)00到11循環(huán)計(jì)數(shù)的計(jì)數(shù) 器,而且計(jì)數(shù)的時(shí)鐘要比較大,選用輸入的2KHz的時(shí)鐘信號(hào);當(dāng)計(jì)數(shù)器計(jì)數(shù)為00時(shí),選通第一個(gè)數(shù)碼管,給它主干道倒計(jì)時(shí)個(gè)位的七段譯碼,當(dāng)計(jì)數(shù)器 計(jì)

14、數(shù)為01時(shí),選通第二個(gè)數(shù)碼管,給它主干道倒計(jì)時(shí)十位的七段譯碼,當(dāng)計(jì) 數(shù)器計(jì)數(shù)為10時(shí),選通第三個(gè)數(shù)碼管,給它支干道倒計(jì)時(shí)個(gè)位的七段譯碼, 當(dāng)計(jì)數(shù)器計(jì)數(shù)為11時(shí),選通第四個(gè)數(shù)碼管,給它支干道倒計(jì)時(shí)十位的七段譯 碼,并以此循環(huán)掃描顯示,達(dá)到人眼看上去四個(gè)數(shù)碼管全顯示的效果。此模塊生成的元件符號(hào)如下圖4.3所示:. "T *b t r e k -rimr dii splaysr»-r? : ?« ! e-re»«T" , rwE ra t -s t e s1Iscan1.O|1jseg_76 0i-tenip O|iIor>e23.0

15、3iterflp 一期r = r5-j insif?圖4.3掃描顯示譯碼模塊元件符號(hào)其中clk2khz是輸入的掃描時(shí)鐘信號(hào)。one1、ten1分別是主干道倒計(jì)時(shí) 的個(gè)位和十位,one2、ten2分別是支干道倒計(jì)時(shí)的個(gè)位和十位,這四個(gè)信號(hào) 都是有交通燈控制及倒計(jì)時(shí)模塊輸出的。Scan是四個(gè)數(shù)碼管的片選信號(hào),seg_7是七段譯碼輸出信號(hào)。頂層文件的編寫(xiě)頂層文件就是將上述的三個(gè)模塊進(jìn)行例化,把它們連接起來(lái)組成一個(gè)整體元件例化語(yǔ)句由兩部分組成,第一部分是將一個(gè)現(xiàn)成的設(shè)計(jì)實(shí)體定義為一個(gè)元件,它的最簡(jiǎn)單表達(dá)式如下:component 元件名 isport (端口名表);end component 文件名;

16、元件例化語(yǔ)句的第二部分是此元件與當(dāng)前設(shè)計(jì)實(shí)體中元件間及端口的連接 說(shuō)明,語(yǔ)句的表達(dá)式如下:例化名:元件名 port map(端口名=連接端口名,);由頂層文件生成的元件符號(hào)如下圖 4.4所示:oik 2ik.O1o-a. r呂曰呂產(chǎn)石ra.日口沖4ybI11ii-卡1" 口Fr圖4.4頂層文件生成元件符號(hào)clk_2k是外部輸入的頻率為2khz的時(shí)鐘信號(hào),car是判斷支干道是否有 車(chē)的輸入信號(hào)。scan 1.0是四位一體數(shù)碼管的片選輸出信號(hào),seg_76.O是 數(shù)碼管的七段譯碼輸出信號(hào),ra、ga、ya、rb、gb、yb分別是主干道和支干 道紅、綠、黃燈的輸出控制信號(hào)。4.2頂層原理圖

17、系統(tǒng)原理圖如下圖4.5所示:ctin:one13.1ter13 Ojtnlpi.pCSfT,<可醪0:ten2r mnstTscarl C;s«_7K<CLITJ|一)scn1J_->.f 琵g平 JJ I v v -sr -11 -=ni sgr -ije vrtfr*OTFT|r_lIIIWkA >*imiHT fN FWR I MkljCL TP亍|、; gytG JTPIiT ;丁5弋.;亍圖4.5頂層原理圖系統(tǒng)工作原理:把car置為低電平,系統(tǒng)處于 stO狀態(tài),即表示支干道沒(méi) 有車(chē)來(lái)時(shí),主干道亮綠燈,支干道亮紅燈,四個(gè)倒計(jì)時(shí)數(shù)碼管都是滅的。當(dāng)把 ca

18、r置為高電平并不變后,主干道和支干道分別進(jìn)入狀態(tài) st1,st2,st3,st4, 并分別正常顯示四個(gè)狀態(tài)的內(nèi)容,實(shí)現(xiàn)主干道每次放行45秒,支干道每次放行 25秒,從而正確實(shí)現(xiàn)交叉路口交通燈的控制。5系統(tǒng)仿真5.1時(shí)鐘分頻模塊仿真仿真波形圖如下圖5.1所示:波形分析:開(kāi)始時(shí)clklhz為低電平,當(dāng)計(jì)數(shù)器第一次計(jì)滿時(shí),clklhz由 低電平轉(zhuǎn)為高電平,當(dāng)計(jì)數(shù)器第二次計(jì)滿時(shí),clklhz轉(zhuǎn)為低電平。在這一過(guò)程 中,clklhz先后經(jīng)歷了 500ms的低電平和高電平,恰好為一個(gè)周期 1s,之后 依次高低交替,得到頻率為1Hz的方波。5.2交通燈控制及計(jì)時(shí)模塊仿真仿真波形如下圖5.2所示:設(shè)置的end

19、 time為100ms ,clk1hz為周期是1ms的方波(把周期縮小 為的是可以縮小仿真的時(shí)間,方便波形的仿真)。放大之后(4 t3X2*1 ''i !j ; i ! 4 i ; i i ! ! ! i ! J ; iX ;01l lj J圖5.2交通燈控制及倒計(jì)時(shí)模塊仿真波形圖波形分析:當(dāng)car為0時(shí),狀態(tài)為stO,此狀態(tài)中主干道亮綠燈,支干道亮紅燈,當(dāng)car為1不變時(shí),變?yōu)闋顟B(tài)st1,之后進(jìn)入st1-st2-st3-st4-st1 的循環(huán)狀態(tài),在相應(yīng)的狀態(tài)里面也能正確地控制紅黃綠燈點(diǎn)亮。將上圖中下面太 密的地方放大一段后,可以清楚地看到,在狀態(tài) st1中,主干道進(jìn)行著45

20、秒 的倒計(jì)時(shí),而支干道進(jìn)行著 50秒的倒計(jì)時(shí),兩個(gè)倒計(jì)時(shí)在 st0的狀態(tài)中始終 相差5秒。5.3掃描顯示譯碼模塊仿真仿真波形如下圖5.3所示:方便仿真設(shè)設(shè)置的end time 為6ms, clk2khz 周期為500us 。D-oX.L.-Ild-I3 3 s a H >3丘"一回rI *jJ0:y azc0/ T YD十. 一。: ?. x.cc北;.0.p X i r 2 Xis t )L i :ur i: jJim j in'mit ii;1 - HIM Jn:ini X O'on ii "Iin;1腳11:當(dāng)one和ten為10時(shí)對(duì)應(yīng)的七段譯碼

21、是 0000000 ,使數(shù)碼管不顯示,用于支干道沒(méi)有車(chē)的情況!-P-粥 3& 03l.X BS11.9T iiIt2.52 ls自滋耐1 115 .24 HIHiicL3. L is1_1 1 1|J1J1_-_11 1圖5.3掃描顯示譯碼模塊的波形仿真圖波形仿真說(shuō)明:為方便觀祭 on el、tenl、one2、ten2及scan用的是無(wú) 符號(hào)十進(jìn)制數(shù),當(dāng)sean=0 時(shí)顯示onel ,當(dāng)sean=1時(shí)顯示tenl ,當(dāng)scan=2 時(shí)顯示one2,當(dāng)scan=3時(shí)顯示ten2。Seg_7的從高到低七位分別對(duì)應(yīng)數(shù)碼 管gfedeba七段。5.4頂層文件的仿真頂層文件的波形仿真圖如下圖

22、5.4 所示:為了方便波形仿真,設(shè)置 end time 為 1.2s , clk_2k 是周期為 5us 的方 波。圖5.4頂層文件波形仿真圖虹甲屛卩口因?qū)Э谶\(yùn)令中細(xì)申“呵* 賦2巾甲”愀卩“暨爭(zhēng)Rl.CSiI L17 11、st=stO時(shí)放大的波形如下圖5.5所示:WffI 1riHt VIML . HO段iir«1 0艸10竊 10lb 11w 10Q ICDL T 3S Mfr i waam仿真波形分析:當(dāng)car為0時(shí),為狀態(tài)stO , ga、rb為高電平,即主干道 亮綠燈,支干道亮紅燈;當(dāng)car由0變?yōu)?且不變時(shí),狀態(tài)轉(zhuǎn)為st1,ga、rb 為高電平,即主干道亮綠燈,支干道亮

23、紅燈;當(dāng) st1倒計(jì)時(shí)結(jié)束,則轉(zhuǎn)為st2, ya、rb為高電平,即主干道亮黃燈,支干道亮紅燈;當(dāng) st2倒計(jì)時(shí)結(jié)束,則轉(zhuǎn) 為st3,ra、gb為高電平,即主干道亮紅燈,支干道亮綠燈;當(dāng)st3倒計(jì)時(shí)結(jié)束, 則轉(zhuǎn)為st4,ra、yb為高電平,即主干道亮紅燈,支干道亮黃燈;當(dāng) st4倒計(jì) 時(shí)結(jié)束,貝U轉(zhuǎn)為st1 o當(dāng)在狀態(tài)st1,大約在1s處car由高電平變?yōu)榈碗娖綍r(shí), 狀態(tài)則會(huì)轉(zhuǎn)為stO o鑒于圖5.4中的scan和seg7太密而看不出其中的變化,所以要把其中幾 段放大才能便于觀察。圖5.5 st=stO時(shí)放大的一段波形圖5.5波形分析:通過(guò)圖5.5可以清晰地觀察到當(dāng)st=st0時(shí),主干道和支干道

24、的數(shù)碼管都是滅的,即 seg7= ” 0000000fflal-tflCTCTm一沖M&&TdutC29.S.2L.5& is甲 HElL.sa !£ Jfli! >nr1g 3 SL £SLillBO JQ BOS3BOV3JxX13T:*i koiL10DL10KDinl伽】Ll、aiociio2、st=st1時(shí)放大的一段波形如下圖5.6所示:SLlLeS9 bduS «cT圖5.6 st=st1 時(shí)放大的一段波形圖5.6波形分析:由于要經(jīng)過(guò)clk_2k兩千分頻后才能得到1hz的倒計(jì)時(shí) 時(shí)鐘信號(hào),則要經(jīng)過(guò) clk_2k兩千個(gè)周期后

25、主干道和支干道的數(shù)碼管秒倒計(jì)時(shí)才減一秒,所以在頂層文件波形仿真時(shí)不好看到倒計(jì)時(shí)的變化。在圖5-6中可以看到在st為st1時(shí)主干道的數(shù)碼管顯示為44,支干道的數(shù)碼管顯示為49,即 scan 為 0 時(shí),seg7 是 “1100110 ”,scan 為 1 時(shí),seg7 是“ 1100110 ”,scan 為 2 時(shí),seg7 是“ 1101111 ”,scan 為 3 時(shí),seg7 是“ 1100110 ”。而st2、st3、st4放大后的波形和圖5.6相似。實(shí)驗(yàn)結(jié)果開(kāi)始時(shí)把car置為低電平,即表示支干道沒(méi)有車(chē)來(lái)時(shí),主干道亮綠燈,支 干道亮紅燈,四個(gè)倒計(jì)時(shí)數(shù)碼管都是滅的。當(dāng)把car置為高電平并不

26、變后,主干道和支干道分別繼續(xù)亮綠燈和紅燈,同時(shí)主干道的數(shù)碼管從44開(kāi)始一秒一秒地倒計(jì)時(shí)顯示直至倒計(jì)時(shí)到 00 ,而支 干道的數(shù)碼管從49開(kāi)始一秒一秒地倒計(jì)時(shí)顯示,并且主、支干道的數(shù)碼管顯 示值始終相差 5。當(dāng)主干道的倒計(jì)時(shí)到 00(支干道倒計(jì)時(shí)到 05 )后的下一秒, 主干道的綠燈滅,亮起了黃燈,而且主干道的數(shù)碼管從 04 開(kāi)始秒倒計(jì)時(shí)直至 00 ,支干道的紅燈在這一過(guò)程中始終是亮的,而且數(shù)碼管正常倒計(jì)時(shí),和主干 道的數(shù)碼管顯示。當(dāng)主、支干道數(shù)碼管倒計(jì)時(shí)到 00 后的下一秒,主干道的黃 燈滅,紅燈亮,數(shù)碼管從 29 開(kāi)始一秒一秒地倒計(jì)時(shí),而支干道的紅燈滅,綠 燈亮,數(shù)碼管開(kāi)始從 24 一秒一秒

27、地倒計(jì)時(shí),始終和主干道的數(shù)碼管少 5, 直至 倒計(jì)時(shí)到 00 。當(dāng)支干道數(shù)碼管倒計(jì)時(shí)到 00 (主干道為 05 )的下一秒后,支干 道的綠燈滅,黃燈亮,數(shù)碼管開(kāi)始從 04 一秒一秒地倒計(jì)時(shí)直至 00 ,而主干道 在這一過(guò)程中繼續(xù)亮紅燈,數(shù)碼管繼續(xù)正常地倒計(jì)時(shí),而和支干道數(shù)碼管顯示 相同。當(dāng)主、支干道倒計(jì)時(shí)到 00 的下一秒,則進(jìn)入到主干道亮綠燈,支干道 亮紅燈的狀態(tài),只要 car 依然維持在高電平,就會(huì)不斷循環(huán)支干道有車(chē)通信的 四個(gè)狀態(tài)。當(dāng) car 從高電平變?yōu)榈碗娖胶螅?不管之前處于 st1 、 st2 、 st3 、st4 中的任 何一個(gè)狀態(tài)都會(huì)進(jìn)入到 st0 狀態(tài),即主干道亮綠燈,支干道

28、亮紅燈,四個(gè)數(shù)碼 管都不會(huì)顯示。6 使用說(shuō)明把 car 置為低電平, 系統(tǒng)處于 st0 狀態(tài) ,即表示支干道沒(méi)有車(chē)來(lái)時(shí), 主干 道亮綠燈,支干道亮紅燈,四個(gè)倒計(jì)時(shí)數(shù)碼管都是滅的。當(dāng)把 car 置為高電平 并不變后,主干道和支干道分別進(jìn)入狀態(tài) st1 ,st2 , st3 ,st4 ,并分別正常顯 示四個(gè)狀態(tài)的內(nèi)容。 實(shí)現(xiàn)主干道每次放行 45 秒,支干道每次放行 25 秒。從而 正確實(shí)現(xiàn)交叉路口交通燈的控制。7 設(shè)計(jì)總結(jié)通過(guò)的緊張工作,完成了我的設(shè)計(jì)任務(wù)交通燈控制器設(shè)計(jì)。通過(guò)本次 課程設(shè)計(jì)的學(xué)習(xí),我深深的體會(huì)到設(shè)計(jì)課的重要性和目的性。本次設(shè)計(jì)課不僅 僅培養(yǎng)了我們實(shí)際操作能力, 也培養(yǎng)了我們靈活運(yùn)

29、用課本知識(shí), 理論聯(lián)系實(shí)際, 獨(dú)立自主的進(jìn)行設(shè)計(jì)的能力。它不僅僅是一個(gè)學(xué)習(xí)新知識(shí)新方法的好機(jī)會(huì),同 時(shí)也是對(duì)我所學(xué)知識(shí)的一次綜合的檢驗(yàn)和復(fù)習(xí),使我明白了自己的缺陷所在, 從而查漏補(bǔ)缺。 希望學(xué)校以后多安排一些類(lèi)似的實(shí)踐環(huán)節(jié), 讓同學(xué)們學(xué)以致用。在設(shè)計(jì)中要求我要有耐心和毅力,還要細(xì)心,稍有不慎,一個(gè)小小的錯(cuò)誤 就會(huì)導(dǎo)致結(jié)果的不正確,而對(duì)錯(cuò)誤的檢查要求我要有足夠的耐心,通過(guò)這次設(shè) 計(jì)和設(shè)計(jì)中遇到的問(wèn)題,也積累了一定的經(jīng)驗(yàn),對(duì)以后從事集成電路設(shè)計(jì)工作 會(huì)有一定的幫助。 在應(yīng)用 VHDL 的過(guò)程中讓我真正領(lǐng)會(huì)到了其并行運(yùn)行與其他 軟件順序執(zhí)行的差別及其在電路設(shè)計(jì)上的優(yōu)越性。 用 VHDL 硬件描述語(yǔ)言

30、的形 式來(lái)進(jìn)行數(shù)字系統(tǒng)的設(shè)計(jì)方便靈活,利用 EDA 軟件進(jìn)行編譯優(yōu)化仿真極大地 減少了電路設(shè)計(jì)時(shí)間和可能發(fā)生的錯(cuò)誤,降低了開(kāi)發(fā)成本,這種設(shè)計(jì)方法必將 在未來(lái)的數(shù)字系統(tǒng)設(shè)計(jì)中發(fā)揮越來(lái)越重要的作用。參考文獻(xiàn)1 潘松,黃繼業(yè) .EDA 技術(shù)使用教程 M. 北京:科學(xué)出版社 ,2006:320-332.2 黃任 .VHDL 入門(mén) . 解惑 . 經(jīng)典實(shí)例 . 經(jīng)驗(yàn)總結(jié) M. 北京:北京航空航天大學(xué)出版 社,2005:64-88.3 徐 志 軍 , 徐 光 輝 .CPLD/FPGA 的 開(kāi) 發(fā) 與 應(yīng) 用 M. 北 京 : 電 子 工 業(yè) 出 版 社,2002:208-218.4 褚振勇 .FPGA 設(shè)計(jì)

31、與應(yīng)用 M. 西安:西安電子科技大學(xué)出版社 ,2003:218-230. 夏宇聞.Verilog 數(shù)字系統(tǒng)設(shè)計(jì)教程M.北京:北京航空航天大學(xué)出版社,2008:302-325.6 夏宇聞 . 復(fù)雜數(shù)字電路與系統(tǒng)的Verilog HDL 設(shè)計(jì)技術(shù) D. 北京清華大學(xué)出版社,1998:28-56.附錄1 、時(shí)鐘分頻模塊library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity div isport(clk2khz:in std_logic;-2khz的輸入時(shí)鐘clk1hz:out std_logic)

32、;-經(jīng) 2000 分頻后的 1hz 時(shí)鐘輸出信號(hào)end;architecture one of div isbeginprocess(clk2khz)2KHz to 1Hzvariable count:integer range 0 to 999;-0到 999 計(jì)數(shù)器variable clk1:std_logic;beginif clk2khz'event and clk2khz='1' thenif count=999 then clk1:=not clk1;count:=0;else count:=count+1;end if;end if;clk1hz<=

33、clk1;end process;end;2 、掃描顯示譯碼模塊library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity display isport(clk2khz:in std_logic;-掃描時(shí)鐘信號(hào)one1,ten1,one2,ten2:in integer range 0 to 10; scan:out std_logic_vector(1 downto 0);- seg_7:out std_logic_vector(6 downto 0);- end entity display

34、;architecture three of display issignal data:integer range 0 to 10;signal seg77:std_logic_vector(6 downto 0); signal cnt:std_logic_vector(1 downto 0);beginprocess(data) 七段譯碼begincase data iswhen 0=>seg77<="0111111"when 1=>seg77<="0000110"when 2=>seg77<="101

35、1011"when 3=>seg77<="1001111"when 4=>seg77<="1100110"when 5=>seg77<="1101101"when 6=>seg77<="1111101"when 7=>seg77<="0000111"when 8=>seg77<="1111111"when 9=>seg77<="1101111"when 10=&g

36、t;seg77<="0000000"end case;end process;片選輸出信號(hào)七段譯碼輸出數(shù)碼管動(dòng)態(tài)掃描計(jì)數(shù)seg_7<=seg77; process(clk2khz,one1,ten1,one2,ten2) beginif clk2khz'event and clk2khz='1' then -00到 11 循環(huán)計(jì)數(shù)器if cnt="11" then cnt<="00"else cnt<=cnt+1;end if;end if;end process;process(cnt

37、,one1,ten1,one2,ten2) 數(shù)碼管動(dòng)態(tài)掃描顯示begincase cnt iswhen "00"=>data<=one1;scan<="00"when "01"=>data<=ten1;scan<="01"when "10"=>data<=one2;scan<="10"when "11"=>data<=ten2;scan<="11"when othe

38、rs=>null;end case;end process;end three;3 、交通燈控制及計(jì)時(shí)模塊library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity state5 isport(clk1hz,car:in std_logic;-1hz倒計(jì)時(shí)時(shí)鐘信號(hào)one1,ten1,one2,ten2:out integer range 0 to 10;-倒計(jì)時(shí)數(shù)r_a,g_a,y_a,r_b,g_b,y_b:out std_logic);-主支干道紅黃綠燈end;architecture

39、 two of state5 issignal st:std_logic_vector(2 downto 0);signal r1,g1,y1,r2,g2,y2:std_logic;beginprocess(clk1hz)5 statesvariable eoc:std_logic;-倒計(jì)時(shí)結(jié)束標(biāo)志位variable h1,l1,h2,l2:integer range 0 to 10;beginif clk1hz'event and clk1hz='1' thencase st iswhen "000"=>if car='0'

40、then 支干道沒(méi)車(chē)經(jīng)過(guò)g1<='1'r1<='0'y1<='0'g2<='0'r2<='1'y2<='0' h1:=10;l1:=10;h2:=10;l2:=10;st<="000"else st<="001"h1:=4;l1:=4;h2:=4;l2:=9;end if;when "001"=>if car='0' then st<="000"

41、 主干道綠燈亮 45 秒elseif eoc='0' thenh1:=4;l1:=4;h2:=4;l2:=9;eoc:='1' g1<='1'r1<='0'y1<='0'g2<='0'r2<='1'y2<='0'elseif h1=0 and l1=1 then st<="010"eoc:='0'h1:=0;l1:=0;h2:=0;l2:=5;elsif l1=0 then l1:=9;h1

42、:=h1-1;l2:=l2-1;elsif l2=0 thenl2:=9;h2:=h2-1;l1:=l1-1;else l1:=l1-1;l2:=l2-1;end if;end if;end if;when "010"=>if car='0' then st<="000" 主干道黃燈亮 5 秒elseif eoc='0' then h1:=0;l1:=4; h2:=0;l2:=4;eoc:='1' g1<='0'r1<='0'y1<='1

43、'g2<='0'r2<='1'y2<='0'elseif l1=1 then st<="011"eoc:='0'h1:=0;l1:=0;h2:=0;l2:=0;else l1:=l1-1;l2:=l2-1;end if;end if;end if;when "011"=>if car='0' then st<="000" 支干道綠燈亮 25 秒elseif eoc='0' then h1:=2;l

44、1:=9; h2:=2;l2:=4;eoc:='1' g1<='0'r1<='1'y1<='0'g2<='1'r2<='0'y2<='0'else if h2=0 and l2=1 then st<="100"eoc:='0'h2:=0;l2:=0;h1:=0;l1:=5;elsif l2=0 thenl2:=9;h2:=h2-1;l1:=l1-1;elsif l1=0 thenl1:=9;h1:=h1-1;l2:=l2-1;else l2:=l2-1;l1:=l1-1;end if;end if;end if;when "100"=>if car='0' then st<="000" 支干道黃燈亮 5 秒elseif eoc='0' then h1:=0;l1:=4; h2:=0;l2:=4;eoc:='1' g1<='0'r1<='1'y1<='0'g2<='0'r2<='

溫馨提示

  • 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)論