




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、vhdl語言與eda課程設(shè)計: 交 通 燈 控 制 器通信與控制工程系電子信息工程摘 要本系統(tǒng)采用gw48 eda/sopc實驗箱來設(shè)計交通燈控制器,模擬實現(xiàn)了紅、綠燈指揮交通的功能。它直接采用fpga/cpld芯片開發(fā),用vhdl語言編程和quartus 6.0設(shè)計。交通燈控制器設(shè)計, 系統(tǒng)地闡述了用fpga/cpld實現(xiàn)數(shù)字電路的設(shè)計過程, 展示了fpga/cpld的強大功能和非凡特性。本交通燈控制器適用東西方向和南北方向的車流量大致相同的路口,紅燈45秒,黃燈5秒,綠燈40秒,同時用數(shù)碼管指示當前狀態(tài)(紅、黃、綠燈)剩余時間。另有一個緊急狀態(tài),當緊急狀態(tài)出現(xiàn)時,兩個方向都禁止通行,指示紅
2、燈。緊急狀態(tài)解除后,重新計時并指示時間。關(guān)鍵詞:交通燈控制器,設(shè)計要求 . 11方案論證與對比 . 11. 1方案一 . 11. 2方案二 . 12. 設(shè)計過程 . 13. 1總體設(shè)計慨要 . 12.2 交通燈原理分析 . 24. 模塊設(shè)計及仿真 . 34.1. 頂層文件的設(shè)計 . 34.2. 狀態(tài)控制模塊(jtd ctrl) . 45. 3倒計時模塊(jtd time)的設(shè)計 . 56. 4數(shù)碼管顯示模塊(jtd xs)的設(shè)計 . 77. 5信號燈顯示模塊(jtd light)的設(shè)計 . 98. 6引腳鎖定 . 114編程下載 . 125結(jié)束語 . 126致謝 . 127參考文獻 . 13更
3、多論文1. 交通燈控制器設(shè)東西方向和南北方向的車流量大致相同,因此紅、黃、綠燈的時長也相同,定為紅燈45秒,黃燈5秒,綠燈40秒,同時用數(shù)碼管指示當前狀態(tài)(紅、黃、綠燈)剩余時間。另外,設(shè)計一個緊急狀態(tài),當緊急狀態(tài)出現(xiàn)時,兩個方向都禁止通行,指示紅燈。緊急狀態(tài)解除后,重新計時并指示時間。采用vhdl語言直接編寫,實現(xiàn)交通燈指揮功能。但此方案編寫復(fù)雜且困難,開發(fā)時間較長。編譯后,不便讀懂,找出錯誤很困難。采用模塊層次化設(shè)計,將此設(shè)計分為四個模塊:計時模塊,狀態(tài)控制模塊,信號燈顯示模塊,數(shù)碼掃描顯示模塊。將四個模塊再分別用vhdl語言編寫成,做成原理圖模塊,用原理圖輸入法做整個設(shè)計的頂層文件。此方
4、案設(shè)計方便、簡單,方法易懂、易操作,也易于尋找程序中的錯誤,故我們采用此方案。根據(jù)交通燈控制器的功能與要求,將其總體電路分為狀態(tài)控制,倒計時,數(shù)碼管顯示,信號燈顯示模塊(jtd ctrl,jtd time,jtd xs,jtd light)。jtd ctrl實現(xiàn)邏輯和時序控制,外部兩路脈沖振蕩器的頻率選為1 khz和1 hz的信號,1khz信號用于顯示模塊的掃描,1 hz信號用做倒計時模塊的計數(shù)脈沖。m為緊急狀態(tài)和自動運行狀態(tài)的控制端。總體框圖:更多論文22.2 交通燈原理分析當m = 1時,進入緊急狀態(tài),s輸出為b100100,即南北、東西向均為紅燈亮。當m = 0時,交通即開始正常工作。m
5、=0時,經(jīng)過40秒, s由b100010變?yōu)閎100001,再經(jīng)過5秒,s變?yōu)閎010100,再經(jīng)過40秒,s變?yōu)閎001100,再經(jīng)過5秒,s變?yōu)閎100010如此循環(huán)下去。當m=1跳變到m=0時,數(shù)碼管繼續(xù)計時,恢復(fù)正常工作狀態(tài)。南北、東西方向的紅綠燈按表一表二變化。東西(a)方向紅燈 紅燈 綠燈 黃燈45秒 40秒 5秒南北(b)方向綠燈 黃燈 紅燈 紅燈40秒 5秒 45秒m s 備注1. 100100 長時間亮紅燈0狀態(tài)1:100010 持續(xù)40秒,轉(zhuǎn)到狀態(tài)2狀態(tài)2:100001 持續(xù)5秒,轉(zhuǎn)到狀態(tài)3狀態(tài)3:010100 持續(xù)40秒,轉(zhuǎn)到狀態(tài)4狀態(tài)4:001100 持續(xù)5秒,轉(zhuǎn)到狀態(tài)
6、1s的六位分別對應(yīng)東西方向(a方向)的紅綠黃和南北方向(b方向)的紅綠黃。1表示亮,0表示滅。 更多論文3 3模塊設(shè)計及仿真頂層原理圖設(shè)計可以依據(jù)系統(tǒng)框圖進行,由反饋控制,倒計時,數(shù)碼管顯示,信號燈顯示模塊(jtd ctrl,jtd time,jtd xs,jtd light)五部分組成。其頂層原理圖如圖2所示。圖2 頂層原理圖 圖3 頂層文件的仿真波形更多論文4狀態(tài)控制模塊根據(jù)倒計時模塊(jtd time)的輸出信號和1hz的時鐘信號,產(chǎn)生系統(tǒng)的狀態(tài)機,控制其他部分的協(xié)調(diào)工作。該模塊的源文件程序如下:library ieee;use ieee.std_logic_1164.all;use i
7、eee.std_logic_unsigned.all;entity jtd_ctrl isport ( clk :in std_logic;at,bt : in std_logic_vector(7 downto 0);s: out std_logic_vector(1 downto 0);end jtd_ctrl;architecture jtd of jtd_ctrl issignal q :std_logic_vector (1 downto 0);beginprocess(clk,at,bt)beginif clkevent and clk =1 thenif(at =x01)or (
8、bt = x01) then q=q+1; 通過at,bt的反饋信號控制倒計時模塊和信號顯示jtd_light模塊的工作else q=q;end if;end if;end process;s=q;end jtd;:更多論文5倒計時模塊用來設(shè)定a和b兩個方向計時器的初值,并為數(shù)碼管顯示模塊提供倒計時時間。倒計時模塊源文件程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity jtd_time isport( clk : in std_logic;m : in std_logic;s
9、 :in std_logic_vector(1 downto 0);at,bt :out std_logic_vector(7 downto 0);end jtd_time;architecture jtd_1 of jtd_time issignal ati : std_logic_vector(7 downto 0):=x01;signal bti : std_logic_vector(7 downto 0):=x01;signal art,agt,ayt : std_logic_vector(7 downto 0);signal brt,bgt,byt : std_logic_vecto
10、r(7 downto 0);begin 設(shè)定各個紅綠黃的工作時間art=x45; 更多論文6 agt=x40;ayt=x05;brt=x45;bgt=x40;byt=x05;process (clk,m,s)beginif m = 1 then ati=ati; btiati=art; btibtiati=agt; btiati=ayt;end case;end if;if ati/=x01 then a方向(東西方向)倒計時if ati(3 downto 0)= 0000 thenati(3 downto 0)=1001;ati(7 downto 4)=ati(7 downto 4)-1;e
11、lse ati(3 downto 0)=ati(3 downto 0)-1;ati(7 downto 4)=ati(7 downto 4);end if;end if;if bti/=x01 then b方向(南北方向)倒計時if bti(3 downto 0)=0000 thenbti(3 downto 0)=1001;bti(7 downto 4)=bti(7 downto 4)-1; 更多論文7 else bti(3 downto 0)=bti(3 downto 0)-1;bti(7 downto 4)=bti(7 downto 4);end if;end if;end if;end i
12、f;end process;at=ati;bt=bti;end jtd_1;顯示模塊用來顯示倒計時時間。采用動態(tài)掃描顯示,通過分位程序,控制四個數(shù)碼管的顯示時間。數(shù)碼管顯示模塊的源文件程序為:圖5 倒計時模塊的仿真波形圖更多論文8 library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity jtd_xs isport ( clk1k :in std_logic;at,bt :in std_logic_vector(7 downto 0);led1,led2,led3,led4:out std_l
13、ogic_vector(3 downto 0);end jtd_xs;architecture jtd_3 of jtd_xs issignal ou1,ou2,ou3,ou4:std_logic_vector(3 downto 0);signal sl:std_logic_vector(1 downto 0);beginprocess(clk1k)beginif clk1kevent and clk1k =1 thenif sl=11 then sl=00; 掃描led顯示管else slou1ou2ou3ou4=at(7 downto 4);end case;end process;led
14、1=ou1; 更多論文9 led2=ou2;led3=ou3;led4=ou4;end jtd_3;:通過控制模塊的輸出的狀態(tài)控制信號,控制六個信號燈的亮滅。信號燈顯示模塊的源文件程序為:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity jtd_light isport (m :in std_logic;s : in std_logic_vector(1 downto 0);abl :out std_logic_vector(5 downto 0);圖6 數(shù)碼管顯示模塊的仿真波形圖更多
15、論文10 end jtd_light;architecture jtd_2 of jtd_light issignal lt: std_logic_vector (5 downto 0);beginprocess (s,m)beginif m =1 then ltltltltlt=001100;end case;end if;end process;abl=lt;end jtd_2;圖7 信號燈顯示模塊的仿真波形圖更多論文11本次設(shè)計我們采用gw48 eda/sopc實驗箱,選擇模式5,引腳鎖定如圖8所示:圖8 引腳鎖定更多論文12 4編程下載在實驗箱上選擇clock2為1hz, clock5
16、為1024hz,模式選擇模式5,引腳鎖定如上圖所示。下載后,結(jié)果顯示正確,六個信號燈依次為東西方向的紅綠黃和南北方向的紅綠黃。兩個方向上的數(shù)碼管顯示的時間完全吻合。鍵8為緊急狀態(tài)控制端,按下鍵8時,兩路信號燈都為紅燈,時間暫停,再次按下鍵8,恢復(fù)原狀態(tài),繼續(xù)計時。結(jié)果證實調(diào)試成功!5結(jié)束語通過的緊張工作,完成了我們的設(shè)計任務(wù)用vhdl設(shè)計交通燈控制器。通過本次課程設(shè)計的學(xué)習(xí),我們深深的體會到設(shè)計課的重要性和目的性所在。為了完成項目,在網(wǎng)絡(luò)上找到了許多相關(guān)資料,大大擴充自己的知識面,使許多以前想解決卻無法解決的困難迎刃而解。對軟件設(shè)計流程有了更深刻的理解,掌握了eda軟件的使用。將書本上的理論知
17、識和實際有機地結(jié)合起來,鍛煉了實際分析問題和解決問題的能力,提高了適應(yīng)實際的能力,為今后的學(xué)習(xí)和實踐打下了良好的基礎(chǔ)。本次eda課程設(shè)計的目的和意義:通過設(shè)計交通燈控制器,了解eda技術(shù),了解并掌握vhdl硬件描述語言的設(shè)計方法和思想,鞏固和綜合運用所學(xué)過的原理知識,提高分析、解決實際問題的獨立工作能力。在指導(dǎo)老師田漢平老師和周桃云老師的精心指導(dǎo)和嚴格要求下,經(jīng)過我們自己的努力,終于完成了這次課程設(shè)計。同時獲得了豐富的理論知識,極大地提高了實踐能力,對fpga技術(shù)方面有了更深的了解,這對我們今后進一步學(xué)習(xí)有極大的幫助。通過大量閱讀資料,我拓寬了自己的知識面,并懂得將所學(xué)知識融會貫通到實踐中去。在獲得知識的同時,我也認識到了自己還需要學(xué)習(xí)的東西很多,理論需要很好的結(jié)合實踐,全面分析并解決問題的能力有待提高。另外,此次課程設(shè)計還獲得了我們的同學(xué)大力支持,在我們對有些知識掌握不夠時,是我們的同學(xué)及時伸出幫助之手使我們的課程設(shè)計能夠及時的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 石材礦山的資源動態(tài)監(jiān)管系統(tǒng)考核試卷
- Module7漢堡法寫父母職業(yè)工作時間【知識提要】五年級英語下冊寫作突破專項訓(xùn)練(外研版三起)
- 電視制式轉(zhuǎn)換技術(shù)考核試卷
- 電感器磁芯結(jié)構(gòu)設(shè)計優(yōu)化考核試卷
- 茅臺學(xué)院《優(yōu)化理論與方法》2023-2024學(xué)年第一學(xué)期期末試卷
- 武漢體育學(xué)院《生物化學(xué)與分子生物學(xué)選論》2023-2024學(xué)年第二學(xué)期期末試卷
- 四川省成都市成華區(qū)市級名校2024-2025學(xué)年校初三下期摸底考試數(shù)學(xué)試題試卷含解析
- 江蘇省無錫市江陰市南菁高級中學(xué)2025年下學(xué)期初三期中語文試題卷含解析
- 西藏林芝市第二小學(xué)2025屆六年級數(shù)學(xué)小升初摸底考試含解析
- 西南石油大學(xué)《醫(yī)學(xué)生物學(xué)實驗》2023-2024學(xué)年第二學(xué)期期末試卷
- 利他思維培訓(xùn)課件
- 2025年北京鐵路局集團招聘筆試參考題庫含答案解析
- 湖南省長沙市雅禮實驗高中-主題班會-把學(xué)習(xí)變?yōu)闊釔郏簝?nèi)驅(qū)力【課件】
- 2025中考物理總復(fù)習(xí)填空題練習(xí)100題(附答案及解析)
- 2025年牛津譯林版英語七年級下冊全冊單元重點知識點與語法匯編
- 期中考試成績質(zhì)量分析
- 高空作業(yè)車(剪叉式、曲臂式)驗收表
- 浸水電梯應(yīng)急保障檢測規(guī)范DB1305T+95-2024
- 高度近視防控專家共識
- 安全標準化安全培訓(xùn)試題(審定版)
- 血透患者敘事護理故事
評論
0/150
提交評論