1、 了解交通燈的燃滅規律。
2、 了解交通燈控制器的工作原理。
3、 熟悉VHDL語言編程,了解實際設計中的優化方案。
二、 實驗原理
交通燈的顯示有很多方式,如十字路口、丁字路口等,而對于同一個路口又有很多不同的顯示要求,比如十字路口,車輛如果只要東西和南北方向通行就很簡單,而如果車子可以左右轉彎的通行就比較復雜,本實驗僅針對最簡單的南北和東西直行的情況。
要完成本實驗,首先必須了解交通路燈的燃滅規律。本實驗需要用到實驗箱上交通燈模塊中的發光二極管,即紅、黃、綠各三個。依人們的交通常規,“紅燈停,綠燈行,黃燈提醒”。其交通燈的燃滅規律為:初始態是兩個路口的紅燈全亮,之后,東西路口的綠燈亮,南北路口的紅燈亮,東西方向通車,延時一段時間后,東西路口綠燈滅,黃燈開始閃爍。閃爍若干次后,東西路口紅燈亮,而同時南北路口的綠燈亮,南北方向開始通車,延時一段時間后,南北路口的綠燈滅,黃燈開始閃爍。閃爍若干次后,再切換到東西路口方向,重復上述過程。
在實驗中使用8個七段碼管中的任意兩個數碼管顯示時間。東西路和南北路的通車時間均設定為20s。數碼管的時間總是顯示為19、18、17……2、1、0、19、18……。在顯示時間小于3秒的時候,通車方向的黃燈閃爍。
三、 實驗內容
本實驗要完成任務就是設計一個簡單的交通燈控制器,交通燈顯示用實驗箱的交通燈模塊和七段碼管中的任意兩個來顯示。系統時鐘選擇時鐘模塊的1464Hz時鐘,黃燈閃爍時鐘要求為2Hz,七段碼管的時間顯示為1Hz脈沖,即每1s中遞減一次,在顯示時間小于3秒的時候,通車方向的黃燈以2Hz的頻率閃爍。系統中用核心板的RST按鍵進行復位。
四、 實驗步驟
1、 打開QUARTUSII軟件,新建一個工程。
2、 建完工程之后,再新建一個VHDL File,打開VHDL編輯器對話框。
3、 按照實驗原理和自己的想法,在VHDL編輯窗口編寫VHDL程序,用戶可參照光盤中提供的示例程序。
4、 編寫完VHDL程序后,保存起來。方法同實驗一。
5、 對自己編寫的VHDL程序進行編譯并仿真,對程序的錯誤進行修改。直到完全通過。
6、 編譯仿真無誤后,根據用戶自己的要求進行管腳分配。分配完成后,再進行全編譯一次,以使管腳分配生效。
7、 根據實驗內容用實驗導線將上面管腳分配的FPGA管腳與對應的模塊連接起來。
8、 用下載電纜通過JTAG口將對應的sof文件加載到FPGA中。觀察實驗結果是否與自己的編程思想一致。
五、 實驗結果與現象
以設計的參考示例為例,當設計文件加載到目標器件后。交通燈模塊的紅、綠、黃LED發光管會模擬實際中的交通信號燈的變化。此時,數碼管上顯示通行的時間的到計時。當到計時到5秒時,黃燈開始閃爍。到0秒時紅綠燈開始轉換,倒計時的時間恢復至20秒。按下按鍵開關K1則從頭開始顯示和計數。
六、 實驗報告
1、 繪出仿真波形,并作說明。
2、 試編寫能手動控制交通燈通行時間的交通燈控制器。
3、 將實驗原理、設計過程、編譯仿真波形和分析結果、硬件測試結果記錄下來。
相關產品:
DB-E807 FPGA實驗教學系統