新聞中心

EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA的交通燈系統(tǒng)控制設(shè)計(jì)

基于FPGA的交通燈系統(tǒng)控制設(shè)計(jì)

作者: 時(shí)間:2011-08-19 來(lái)源:網(wǎng)絡(luò) 收藏

摘要:為了對(duì)進(jìn)行精確控制,采用實(shí)驗(yàn)板,在QuartusⅡ軟件環(huán)境下,分別實(shí)現(xiàn)脈沖發(fā)生模塊、狀態(tài)定時(shí)模塊、顯示模塊、時(shí)間顯示模塊,進(jìn)行仿真實(shí)驗(yàn)和硬件下載,獲得的測(cè)試結(jié)果滿足設(shè)計(jì)要求。由于采用了EDA技術(shù),使數(shù)字設(shè)計(jì)的效率顯著提高。
關(guān)鍵詞:;QuartusⅡ;;數(shù)字設(shè)計(jì)

本文引用地址:http://butianyuan.cn/article/191050.htm

目前交通燈廣泛應(yīng)用于道路交通建設(shè)中。本文設(shè)計(jì)一個(gè)十字路口交通燈控制電路,要求東西、南北兩條干道的紅、綠、黃交通燈按要求循環(huán)變化,并以倒計(jì)時(shí)方式指示干道通行或禁止的維持時(shí)間。在QuartusⅡ軟件環(huán)境中設(shè)計(jì)、仿真,并在實(shí)驗(yàn)板上實(shí)現(xiàn)所設(shè)計(jì)電路的功能。

1 系統(tǒng)概述

1.1 設(shè)計(jì)思想

基于FPGA的交通燈系統(tǒng)包括4大模塊,分別為脈沖發(fā)生、狀態(tài)定時(shí)、交通燈閃爍的控制、閃爍時(shí)間的控制,基本原理如圖1所示。

1.jpg

1.2 總體工作情況

交通燈控制要求如表1所示。

該設(shè)計(jì)的交通燈控制分為6個(gè)狀態(tài)。由于各狀態(tài)持續(xù)時(shí)間不同,所以電路的核心控制部分是狀態(tài)機(jī)和定時(shí)器,狀態(tài)機(jī)在定時(shí)器觸發(fā)下周期性循環(huán),狀態(tài)碼控制6個(gè)燈以一定的規(guī)律變化。變化情況如圖2所示。

2.jpg

系統(tǒng)脈沖由FPGA開(kāi)發(fā)板晶振經(jīng)過(guò)分頻電路實(shí)現(xiàn)。狀態(tài)定時(shí)由74190可逆十進(jìn)制計(jì)數(shù)器和T’觸發(fā)器實(shí)現(xiàn),只要置數(shù)合理,翻轉(zhuǎn)信號(hào)到位,就可以使電路在東西(I)、南北(J)兩個(gè)控制狀態(tài)間翻轉(zhuǎn)。紅、黃、綠燈的閃爍由7485數(shù)字比較器和組合邏輯控制,其中7485數(shù)字比較器用于比較計(jì)數(shù)器當(dāng)前持續(xù)狀態(tài)和所需要的狀態(tài)全部時(shí)間,并做出相應(yīng)的變化。組合邏輯控制由AHDL文件編寫(xiě)真值表實(shí)現(xiàn)。時(shí)間顯示由AHDL文件編寫(xiě)真值表實(shí)現(xiàn),輸入正確的邏輯,七段譯碼電路即能得到正確的時(shí)間顯示。

1.3 各功能的組成

整個(gè)電路可以分為4大部分,包括脈沖發(fā)生、狀態(tài)定時(shí)、時(shí)間顯示和數(shù)字比較一組合邏輯控制。

1.3.1 脈沖發(fā)生

脈沖發(fā)生器為整個(gè)系統(tǒng)提供驅(qū)動(dòng),將輸入端分配給FPGA實(shí)驗(yàn)板的PIN55引腳,則會(huì)由實(shí)驗(yàn)板上產(chǎn)生頻率為10 MHz的輸入脈沖,用7片7490,每一級(jí)都構(gòu)成10分頻電路,使頻率從10 MHz降低為1Hz。

1.3.2 狀態(tài)定時(shí)

狀態(tài)定時(shí)可由預(yù)置BCD碼初值的74190級(jí)聯(lián)實(shí)現(xiàn),構(gòu)成減計(jì)數(shù)器。級(jí)聯(lián)原則是:低位計(jì)數(shù)器從全0狀態(tài)變?yōu)樽畲蟠a值狀態(tài)時(shí)可使高位計(jì)數(shù)器減1。級(jí)聯(lián)方式分為異步和同步兩種,本文采取的是異步級(jí)聯(lián)方式,即低位計(jì)數(shù)器溢出信號(hào)控制高位計(jì)數(shù)器的記數(shù)脈沖輸入端??筛鶕?jù)計(jì)數(shù)器的時(shí)鐘觸發(fā)方式,在低位計(jì)數(shù)器狀態(tài)碼從全“0”變?yōu)樽畲蟠a值的瞬間,為高位計(jì)數(shù)器提供有效的計(jì)數(shù)脈沖邊沿。具體做法是將低片位的溢出信號(hào)RCON端口接到高片位的計(jì)數(shù)脈沖CLK,實(shí)現(xiàn)兩位BCD碼的置數(shù)、翻轉(zhuǎn)和借位,使系統(tǒng)表示的數(shù)字能在22~16之間循環(huán)。
74190功能說(shuō)明:
(1)GN為計(jì)數(shù)器使能控制端,低電平有效。當(dāng)GN為高電平時(shí),禁止計(jì)數(shù)。
(2)DNUP為計(jì)數(shù)方式控制,接高電平為減計(jì)數(shù),接低電平為加計(jì)數(shù)。
(3)LDN為異步預(yù)置數(shù)控制。當(dāng)LDN為低電平時(shí),計(jì)數(shù)器狀態(tài)QD,QC,QB,QA分別等于D,C,B,A。
(4)計(jì)數(shù)器位序由高至低順序?yàn)镼D,QC,QB,QA。QD為最高位MSB,QA為最低位LSB。
(5)計(jì)數(shù)脈沖CLK上升沿有效。
(6)當(dāng)計(jì)數(shù)器輸出QDQCQBQA為十進(jìn)制加計(jì)數(shù)的最大狀態(tài)碼“1001”或?yàn)闇p計(jì)數(shù)的最小狀態(tài)碼全“0”時(shí),極值狀態(tài)碼指示MAX/MIN輸出為高電平。
(7)當(dāng)極值狀態(tài)碼指示MAX/MIN為高電平且CLK為低電平時(shí),溢出信號(hào)RCON為低電平,即RCON與計(jì)數(shù)脈沖同步。

系統(tǒng)記數(shù)脈沖為1 Hz時(shí),如表2所示,當(dāng)I狀態(tài)(東西控制狀態(tài))的定時(shí)時(shí)間為22 s,計(jì)數(shù)器應(yīng)該先預(yù)置22的BCD碼;同理,J狀態(tài)(南北控制狀態(tài))之前應(yīng)該預(yù)置16的BCD碼。

3.jpg


上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉