基于FPGA的交通燈系統(tǒng)控制設(shè)計
摘要:為了對交通燈系統(tǒng)進(jìn)行精確控制,采用FPGA實(shí)驗(yàn)板,在QuartusⅡ軟件環(huán)境下,分別實(shí)現(xiàn)脈沖發(fā)生模塊、狀態(tài)定時模塊、交通燈顯示模塊、時間顯示模塊,進(jìn)行仿真實(shí)驗(yàn)和硬件下載,獲得的測試結(jié)果滿足設(shè)計要求。由于采用了EDA技術(shù),使數(shù)字系統(tǒng)設(shè)計的效率顯著提高。
關(guān)鍵詞:FPGA;QuartusⅡ;交通燈;數(shù)字系統(tǒng)設(shè)計
目前交通燈廣泛應(yīng)用于道路交通建設(shè)中。本文設(shè)計一個十字路口交通燈控制電路,要求東西、南北兩條干道的紅、綠、黃交通燈按要求循環(huán)變化,并以倒計時方式指示干道通行或禁止的維持時間。在QuartusⅡ軟件環(huán)境中設(shè)計、仿真,并在FPGA實(shí)驗(yàn)板上實(shí)現(xiàn)所設(shè)計電路的功能。
1 系統(tǒng)概述
1.1 設(shè)計思想
基于FPGA的交通燈系統(tǒng)控制設(shè)計包括4大模塊,分別為脈沖發(fā)生、狀態(tài)定時、交通燈閃爍的控制、閃爍時間的控制,基本原理如圖1所示。
1.2 總體工作情況
交通燈控制要求如表1所示。
該設(shè)計的交通燈控制分為6個狀態(tài)。由于各狀態(tài)持續(xù)時間不同,所以電路的核心控制部分是狀態(tài)機(jī)和定時器,狀態(tài)機(jī)在定時器觸發(fā)下周期性循環(huán),狀態(tài)碼控制6個燈以一定的規(guī)律變化。變化情況如圖2所示。
系統(tǒng)脈沖由FPGA開發(fā)板晶振經(jīng)過分頻電路實(shí)現(xiàn)。狀態(tài)定時由74190可逆十進(jìn)制計數(shù)器和T’觸發(fā)器實(shí)現(xiàn),只要置數(shù)合理,翻轉(zhuǎn)信號到位,就可以使電路在東西(I)、南北(J)兩個控制狀態(tài)間翻轉(zhuǎn)。紅、黃、綠燈的閃爍由7485數(shù)字比較器和組合邏輯控制,其中7485數(shù)字比較器用于比較計數(shù)器當(dāng)前持續(xù)狀態(tài)和所需要的狀態(tài)全部時間,并做出相應(yīng)的變化。組合邏輯控制由AHDL文件編寫真值表實(shí)現(xiàn)。時間顯示由AHDL文件編寫真值表實(shí)現(xiàn),輸入正確的邏輯,七段譯碼電路即能得到正確的時間顯示。
1.3 各功能的組成
整個電路可以分為4大部分,包括脈沖發(fā)生、狀態(tài)定時、時間顯示和數(shù)字比較一組合邏輯控制。
1.3.1 脈沖發(fā)生
脈沖發(fā)生器為整個系統(tǒng)提供驅(qū)動,將輸入端分配給FPGA實(shí)驗(yàn)板的PIN55引腳,則會由實(shí)驗(yàn)板上產(chǎn)生頻率為10 MHz的輸入脈沖,用7片7490,每一級都構(gòu)成10分頻電路,使頻率從10 MHz降低為1Hz。
1.3.2 狀態(tài)定時
狀態(tài)定時可由預(yù)置BCD碼初值的74190級聯(lián)實(shí)現(xiàn),構(gòu)成減計數(shù)器。級聯(lián)原則是:低位計數(shù)器從全0狀態(tài)變?yōu)檩^大碼值狀態(tài)時可使高位計數(shù)器減1。級聯(lián)方式分為異步和同步兩種,本文采取的是異步級聯(lián)方式,即低位計數(shù)器溢出信號控制高位計數(shù)器的記數(shù)脈沖輸入端?筛鶕(jù)計數(shù)器的時鐘觸發(fā)方式,在低位計數(shù)器狀態(tài)碼從全“0”變?yōu)檩^大碼值的瞬間,為高位計數(shù)器提供有效的計數(shù)脈沖邊沿。具體做法是將低片位的溢出信號RCON端口接到高片位的計數(shù)脈沖CLK,實(shí)現(xiàn)兩位BCD碼的置數(shù)、翻轉(zhuǎn)和借位,使系統(tǒng)表示的數(shù)字能在22~16之間循環(huán)。
74190功能說明:
(1)GN為計數(shù)器使能控制端,低電平有效。當(dāng)GN為高電平時,禁止計數(shù)。
(2)DNUP為計數(shù)方式控制,接高電平為減計數(shù),接低電平為加計數(shù)。
(3)LDN為異步預(yù)置數(shù)控制。當(dāng)LDN為低電平時,計數(shù)器狀態(tài)QD,QC,QB,QA分別等于D,C,B,A。
(4)計數(shù)器位序由高至低順序?yàn)镼D,QC,QB,QA。QD為較高位MSB,QA為較低位LSB。
(5)計數(shù)脈沖CLK上升沿有效。
(6)當(dāng)計數(shù)器輸出QDQCQBQA為十進(jìn)制加計數(shù)的較大狀態(tài)碼“1001”或?yàn)闇p計數(shù)的較小狀態(tài)碼全“0”時,極值狀態(tài)碼指示MAX/MIN輸出為高電平。
(7)當(dāng)極值狀態(tài)碼指示MAX/MIN為高電平且CLK為低電平時,溢出信號RCON為低電平,即RCON與計數(shù)脈沖同步。
系統(tǒng)記數(shù)脈沖為1 Hz時,如表2所示,當(dāng)I狀態(tài)(東西控制狀態(tài))的定時時間為22 s,計數(shù)器應(yīng)該先預(yù)置22的BCD碼;同理,J狀態(tài)(南北控制狀態(tài))之前應(yīng)該預(yù)置16的BCD碼。
狀態(tài)計時電路由兩片74190級聯(lián)而成,構(gòu)成22和16自翻轉(zhuǎn)的電路。其要解決的核心問題包括置數(shù),翻轉(zhuǎn)和借位。根據(jù)74190芯片的特點(diǎn),可分析其實(shí)現(xiàn)原理如圖4所示,通過溢出信號RCON的上升沿實(shí)現(xiàn)借位,使得數(shù)字能夠從20到19,個位向十位借位,順利過渡。
置數(shù)和翻轉(zhuǎn)之間有先后關(guān)系,即須先置數(shù)后翻轉(zhuǎn)。如表3所示,分析兩個BCD碼各位特點(diǎn),可知兩者D7D6D3D0位均為1,D1位均為0,而D5D4D2位不同,如圖5,D5D4D2位由狀態(tài)電平S來控制,當(dāng)為I狀態(tài)時,計數(shù)器的預(yù)置的數(shù)為D5=0,D4=D2=1,而為J狀態(tài)時,計數(shù)器的預(yù)置的數(shù)為D5=1,D4=D2=0,根據(jù)74190的功能,將2片74190的MAX/MIN引出,通過與非門,分別連在高位和低位的LDN置數(shù)端,通過分析可知,當(dāng)計數(shù)器從01減到00時候,高低位的MAX/MIN均為高電平,經(jīng)過與非門以后為低電平,74190被置數(shù),其置數(shù)值由狀態(tài)S來決定,S是由LDN端信號經(jīng)
過一個T’觸發(fā)器決定的,即LDN信號每置數(shù)一次,S翻轉(zhuǎn)1次,從而區(qū)分16和22狀態(tài)。按這個結(jié)構(gòu),可分別置數(shù)16和22,使其實(shí)現(xiàn)自翻轉(zhuǎn)。
圖5為狀態(tài)定時模塊的實(shí)際連接圖。
1.3.3 時間顯示
時間顯示要用到7段顯示譯碼電路,由于是兩位BCD碼,故用二選一數(shù)據(jù)選擇器。選擇端S接一個頻率很高的方波(如1 kHz);數(shù)據(jù)比較器的輸出和1 Hz脈沖作為AHDL模塊的輸入,即可正確顯示時間。
為正確顯示時間,用AHDL文件自編譯碼真值表如下:
1.3.4 數(shù)字比較一組合邏輯控制
該模塊將狀態(tài)定時模塊輸出的時間與時間節(jié)點(diǎn)進(jìn)行比較,從而確定電路處于22 s或者16 s的具體的某個狀態(tài)。由表1可知,東西(I)或南北(J)的控制狀態(tài)都有3個階段的控制邏輯,分別對應(yīng)3個時間段:1~3 s,4~6 s和大于6 s,因此,采用數(shù)字比較器進(jìn)行比較,確定定時值小于4 s或大于6 s,方法如圖7所示,采用4片7485數(shù)字比較器,兩兩級聯(lián),其中一個由狀態(tài)定時模塊的輸出與4即二進(jìn)制0100比較;另一個由狀態(tài)定時模塊的輸出與6即二進(jìn)制0110比較。
編寫組合邏輯真值表,將狀態(tài)信號S,兩個數(shù)字比較器的輸出Y1,Y2和1 Hz脈沖作為輸入,各個燈的狀態(tài)作為輸出。從而根據(jù)邏輯關(guān)系得出對應(yīng)時間電路的狀態(tài),控制紅、黃、綠燈處于不同的狀態(tài)。S判斷電路處于22 s狀態(tài)還是16 s狀態(tài),Y1,Y2區(qū)分東西、南北六個階段狀態(tài),1 Hz脈沖實(shí)現(xiàn)綠燈閃爍。
2 電路的組構(gòu)與調(diào)試
來用QuartusⅡ軟件設(shè)計各個模塊,并進(jìn)行仿真。確認(rèn)結(jié)果后,下載至FPGA實(shí)驗(yàn)板中,進(jìn)行相應(yīng)的硬件調(diào)試,調(diào)試結(jié)果與仿真結(jié)果相一致。圖8為仿真波形,系統(tǒng)上電需要調(diào)整的過程,因此電路正常工作前重復(fù)了22s的狀態(tài)。
相關(guān)閱讀:
- ...2012/03/31 10:53·基于FPGA的射頻讀卡器設(shè)計
- ...2011/12/02 16:57·基于FPGA直接序列擴(kuò)頻系統(tǒng)的設(shè)計
- ...2011/11/07 15:11·基于FPGA的高速串行傳輸系統(tǒng)的設(shè)計與實(shí)現(xiàn)
- ...2011/11/07 15:10·基于FPGA的通用異步收發(fā)器設(shè)計
- ...2011/11/07 15:10·基于FPGA的遠(yuǎn)距離測溫器數(shù)控系統(tǒng)設(shè)計
- ...2011/10/31 16:02·基于FPGA的數(shù)據(jù)采集系統(tǒng)設(shè)計
- ...· “芯創(chuàng)杯”首屆高校未來汽車人機(jī)交互設(shè)計大賽報名正式啟動
- ...· 探秘第二屆衛(wèi)藍(lán)山鷹“創(chuàng)新·共享”試驗(yàn)技術(shù)論壇!
- ...· “2018中國半導(dǎo)體生態(tài)鏈大會”在江蘇省盱眙舉行
- ...· 新主題新規(guī)劃,CITE 2019瞭望智慧未來
- ...· 從汽車到工廠,TI毫米波傳感器致力于創(chuàng)造更智能的世界
- ...· 意法半導(dǎo)體(ST)、Cinemo和Valens在CES 2018展上聯(lián)合演示汽車信息娛樂解決方案
- ...· 北京集成電路產(chǎn)業(yè)創(chuàng)新發(fā)展高峰論壇即將在京召開
- ...· 三菱電機(jī)強(qiáng)勢出擊PCIM亞洲2017展
- ...· GPGPU國產(chǎn)替代:中國芯片產(chǎn)業(yè)的空白地帶
- ...· 物聯(lián)網(wǎng)產(chǎn)品設(shè)計中Wi-Fi連接的四個關(guān)鍵因素
- ...· 第三屆中國MEMS智能傳感器產(chǎn)業(yè)發(fā)展大會即將于蚌埠拉開帷幕
- ...· IAIC專項(xiàng)賽演繹“中國芯“應(yīng)用創(chuàng)新,信息安全高峰論壇亮劍海寧
- ...· 智能控制有源鉗位反激
- ...· 解讀5G毫米波OTA 測試技術(shù)
- ...· 多個市場高速增長推動Molex加強(qiáng)汽車領(lǐng)域的發(fā)展
- ...· 中國綠色制造聯(lián)盟成立大會召開在即 政產(chǎn)學(xué)研用共探綠色發(fā)展新模式
- ...· Efinix® 全力驅(qū)動AI邊緣計算,成功推出Trion™ T20 FPGA樣品, 同時將產(chǎn)品擴(kuò)展到二十萬邏輯單元的T200 FPGA
- ...· 英飛凌亮相進(jìn)博會,引領(lǐng)智慧新生活
- ...· 三電產(chǎn)品開發(fā)及測試研討會北汽新能源專場成功舉行
- ...· Manz亞智科技跨入半導(dǎo)體領(lǐng)域 為面板級扇出型封裝提供化學(xué)濕制程、涂布及激光應(yīng)用等生產(chǎn)設(shè)備解決方案
- ...· 中電瑞華BITRODE動力電池測試系統(tǒng)順利交付北汽新能源
- ...· 中電瑞華FTF系列電池測試系統(tǒng)中標(biāo)北京新能源汽車股份有限公司
- ...· 中電瑞華大功率高壓能源反饋式負(fù)載系統(tǒng)成功交付中電熊貓
- ...· 中電瑞華國際在電動汽車及關(guān)鍵部件測評研討會上演繹先進(jìn)測評技術(shù)
- ...· 數(shù)據(jù)采集終端系統(tǒng)設(shè)備
- ...· 簡儀科技踏上新征程
- ...· 易靈思® 宣布 AEC-Q100 資質(zhì)認(rèn)證和汽車系列產(chǎn)品計劃
- ...· 易靈思® 宣布擴(kuò)充高性能 鈦金系列™ FPGA 產(chǎn)品 鈦金系列產(chǎn)品擴(kuò)充至包含 1M 邏輯單元的 FPGA
- ...· 易靈思® 宣布Trion® Titanium 在臺積電 (TSMC) 16納米工藝節(jié)點(diǎn)流片
- ...· TI杯2019年全國大學(xué)生電子設(shè)計競賽頒獎典禮在京舉行
- ...· BlackBerry QNX虛擬機(jī)獲得全球首個汽車安全完整性等級(ASIL) ‘D’認(rèn)證
- ...· 威馬汽車選擇BlackBerry助力下一代汽車