第一篇:交通燈控制電路設計自動化 數字電子技術課程設計
綜 述
本次設計主要分為四個部分,第一部分:信號產生電路;第二部分:電子示電路;第三部分:倒計時設計,第四部分:交通燈及交通燈控制電路
在本次設計中采用555定時器產生CP=1Hz的脈沖信號,經過用741192設計的預置狀態為59的60進制加計數器和預置狀態為29的30進制計數器。并使進位位作為脈沖輸出,實現5分頻,然后用芯片74161和74139實現南北干道和支東西干道紅,綠,黃色燈亮的時間控制,最后一部分的減計數器選用74193進行級聯計數,譯碼器選用cc4511,本人主要設計減計數器及數碼管顯示倒計時部分
一、設計任務與要求
1.東西方向綠燈亮,南北方向紅燈亮,時間30。2.東西方向與南北方向黃燈亮,時間5s。3.南北方向綠燈亮,東西方向紅燈亮,時間60。
二、方案設計與論證
根據設計任務與要求,我們可以知道這個交通燈的設計是分南北干道和東西干道的,兩個方面的時間是不同的,東西方向通行30s,南北方向60s,這就要求我們要有兩個計數器,根據我自己的經驗,東西方向通行30s完,倒計時數字顯示器會顯示到0,然后切換到南北方向通行60s完之后, 倒計時數字顯示器也會顯示到0之后然后切換到南北方向,這樣如此循環,由于黃燈是當兩個計數器倒計時到5時開始閃,我們就可以在這時發出一個脈沖然后一直保持到0,或者是接收0~5這段時間的脈沖都可以控黃燈只在到了這段時間才亮;方案:
交通燈控制原理圖:
2.a 交通燈原理框圖
首先由555定時器產生1s的信號脈沖,通過由一些1k電阻和三片74LS245,兩片74LS192處理構成定時電路處理,產生時間輸出信號作用電子顯示器,另一部分的1s的信號脈沖通過由兩片74LS112的JK觸發器組成的路燈控制電路的對1s的信號處理,產生對交通路燈有控制作用的電子邏輯信號,從而實現按要求的對路燈的正常控制。
2三、單元電路設計
3.1時間脈沖產生電路
由 555 定時器和外接元件 R1、R2、C 構成多諧振蕩器,腳 2 與腳 6 直接相連。電路沒有穩態,僅存在兩個暫穩態,電路亦不需要外接 觸發信號,利用電源通過 R1、R2 向 C 充電,以及 C 通過 R2 向放電端 放電,使電路產生振蕩。電容 C 在 和 之間充電和放電,從而在輸出端得到一系列的矩形波,且通過調節參數,使得產生的矩形波為1hz的也就是周期為1s的脈沖發生電路。
3.1a 1s脈沖信號產生電路
3.2電子顯示電路
一個LED數碼管可用來顯示一位0~9十進制數和一個小數點。小型數碼管(0.5寸和0.36寸)每段發光二極管的正向壓降,隨顯示光(通常為紅、綠、黃、橙色)的顏色不同略有差別,通常約為2~2.5V,每個發光二極管的點亮電流在5~10mA。LED數碼管要顯示BCD碼所表示的十進制數字就需要有一個專門的譯碼器,該譯碼器不但要完成譯碼功能,還要有相當的驅動能力。
3.2a BCD碼顯示電路
3.3計時器電路
計數器
倒計時計數電路主要由計數器構成,它在整個系統設計中的作用是實現計時計數,在此我們選用減法計數器,因為本設計說明時間可預置,所以需要可預置數的減計數器。目前,在實際工程應用中,我們已經很少使用小規模的觸發器去拼接成各種計數器,而是直接選用集成計數器產品。3.3a 74LS192 74LS193引腳圖
本次課程設計需要50進制和30進制減計數器各一個,所以采用兩個74193級聯計數,將表示個位的計數芯片借位端BO連接后一級的CPD即可進行級聯計數,后一級輸出為十位位。以下為設計中用到的50和30進制減計數器。以下為計數器的邏輯電路圖:
3.3b 范圍為49~0的50進制減計數器
3.3c計數范圍為29~0的30進減制計數器
3.4交通燈控制電路與交通燈
3.4,1交通燈控制電路
交通信號燈轉換器其實就是由計數進制轉換器來實現,即一個JK觸發器,其中J、K端都同時接高電平,即構成了一個T’觸發器,目的就是實現翻轉功能,其時鐘輸入端是由倒計時計數器中的兩片74192的八個輸出端經過一個或門然后經過一個非門接入。
3.4.1a 交通燈控制電路
3.4,2交通燈模擬電路
S0:沒有打開電源的狀態。S1:東西方向綠燈亮,南北方向紅燈亮,時間30s。S0,S1,S2,S3中任一狀態下打開電源會進入S1狀態,數碼管初始值為60。數碼管最大顯示為60,出現“0”的瞬間進入下一狀態。(S2)S2:東西方向與南北方向黃燈亮,時間5s。
數碼管最大顯示為30,出現“0”的瞬間進入下一狀態。S3:南北方向綠燈亮,東西 方向紅燈亮,時間60s。數碼管最大顯示為60,出現“0”的瞬間進入下一狀態。
3.4.2a 交通燈模擬電路
心得體會
經過一周的努力,我終于完成關于交通燈控制電路的電子課程設計,通過一周不斷的查資料讓我積累了許多實際操作經驗,已初步掌握了數電的應用技術,以及數字電路的知識和有關器件的應用,我深刻體會到了數子電路技術對當今現代社會的重要作用。經過這次設計,我學會了許多東西,學會了嚴密的思考,構想及怎樣把計劃付諸于實際行動之中。同時與社會的不斷高速發展的步伐相比,我認識到自己所學的知識和技能還遠遠不足,有些實際性的問題還不能夠解決,缺少很多有實際運用價值的知識儲備,缺乏應有的動手解決實際問題的能力,缺乏些高效利用及篩選大量資料的能力,缺乏資源共享及應有的團隊合作精神,有待進一步提高,我應當學好自己的專業知識以適應不斷發展的社會。
在這次課程設計中,我學會了如何有效的利用網絡資源及圖書館的藏書,找到了幾個很不錯的專業網站,為以后的查閱專業方面的信息和相互之間的交流打下了堅實的基礎,學會了如何看電路圖,識別電路圖,提高了自己的專業技能,同時也培養了自己獨立解決實際問題的能力,也培養了自己認真和嚴謹的科學態度,收到了很大的啟發,為以后的工作積累了些寶貴的經驗。
參考文獻
[1]高吉祥.數字電子技術.北京:電子工業出版社
[2]梁宗善.電子技術基礎課程設計[M].武漢:華中理工大學出版社 [3]李玲遠,范綠蓉,陳小宇.電子技術基礎實驗.北京:科學出版社 [4]彭介華.電子技術課程設計指導[M].北京:高等教育出版社 [5]康光華
電子技術基礎(數電部分)華中理工大學電子學教研室
第二篇:課程設計任務書-24交通燈控制電路設計
課程設計任務書
題目:交通燈控制電路設計
時間: 年 月 日—— 年 月 日
設計的說明:
本設計需要用到實驗箱上交通燈模塊中的發光二極管,即紅、黃、綠各三個。依人們的交通常規,“紅燈停,綠燈行,黃燈提醒”。交通燈顯示用實驗箱的交通燈模塊和七段碼管中的任意兩個來顯示。系統時鐘選擇時鐘模塊的1KHz時鐘,黃燈閃爍時鐘要求為2Hz,七段碼管的時間顯示為1Hz 脈沖,即每1s 中遞減一次,在顯示時間小于3 秒的時候,通車方向的黃燈以2Hz 的頻率閃爍。系統中用S1 按鍵進行復位。
設計的任務和要求:
1、在十字路口的兩個方向上各設一組紅、綠、黃燈;初始狀態是兩個路口的紅燈全亮之后,東西路口的綠燈亮,南北路口的紅燈亮,東西方向通車,延時一段時間后,東西路口綠燈滅,黃燈開始閃爍。閃爍若干次后,東西路口紅燈亮,而同時南北路口的綠燈亮,南北方向開始通車,延時一段時間后,南北路口的綠燈滅,黃燈開始閃爍。閃爍若干次后,再切換到東西路口方向,重復上述過程。
2、設置數碼管顯示允許通行或者禁止通行的時間,東西路和南北路的通車時間均設定為20s。數碼管的時間總是顯示為19、18、17……2、1、0、19、18……。在顯示時間小于3 秒的時候,通車方向的黃燈閃爍。
3、當各條路中任意一條上出現特殊情況,如消防車、救護車或其他需要優先放行的車輛時,各方向上均是紅燈亮。倒計時停止,且顯示數字在閃爍。當特殊運行狀態結束后,控制器恢復原來狀態,繼續正常運行。
4、要求對整體電路進行仿真,提供仿真波形圖,并分析結果
5、硬件測試結果用照片的形式記錄下來。
提高部分:編寫能手動控制交通燈通行時間的交通燈控制器。
指導教師:
學生:
日期:
第三篇:上海大學數字電子技術課程設計交通燈
電子技術課程設計報告
——交通燈控制電路
XX大學機自學院自動化系
自動化
專業
姓名:
學號:
指導老師:
2018年X月X日
一、主要用途:
交通信號燈使交通得以有效管制,對于疏導交通流量、提高道路通行能力、減少交通事故有明顯效果。
在十字交叉路口,為保證交通秩序和行人安全,一般在每條道路上各有一組紅、黃、綠交通信號燈,其中紅燈亮,表示該條道路禁止通行;黃燈亮表示該條道路上未過停車線的車輛停止通行,已過停車線的車輛繼續通行;綠燈亮表示該條道路允許通行。交通燈控制電路自動控制十字路口兩組紅、黃、綠交通燈的狀態轉換,指揮各種車輛和行人安全通行,實現十字路口交通管理的自動化。
二、設計任務及要求:
設計一個主干道和支干道十字路口的交通燈控制電路,其要求如下:
1.一般情況下,保持主干道暢通,主干道路燈亮、支干道紅燈亮,并且主干燈亮的時間不少于60
S;
2.當主干道綠燈亮超過60
S,且支干道有車時,主干道紅燈亮,支干道綠燈亮,但支干道綠燈亮的時間不得超過30S;
3.每次主干道或支干道綠燈亮變紅燈時,黃燈先亮5S。
三、設計思路步驟及仿真調試
設計分析
分析可知,所需的交通燈有以下四個狀態:
a.主干道綠燈亮,支干道紅燈亮,此時主干道允許車輛通行,支干道禁止車輛通行。當主干道綠燈亮夠60秒后,控制器發出狀態轉換信號,系統進入下一個狀態。
b.主干道黃燈亮,支干道紅燈亮,此時主干道允許超過停車線的車輛繼續通行,而未超過停車線的車輛禁止通行,支干道禁止車輛通行。當主干道黃燈亮夠5秒后,控制器發出狀態轉換信號,系統進入下一個狀態。
c.主干道紅燈亮,支干道綠燈亮。此時主干道禁止車輛通行,支干道允許車輛通行,當支干道綠燈亮夠30秒后,控制器發出狀態轉換信號,系統進入下一個狀態。
d.主干道紅燈亮,支干道黃燈亮。此時主干道禁止車輛通行,支干道允許超過停車線的車輛通行,而未超過停車線的車輛禁止通行。當支干道紅燈亮夠5秒后,控制器發出狀態轉換信號,系統進入下一個狀態。
以上a,b,c,d四種狀態依次交替循環,達到指揮交通的功能。
分析得出,交通燈系統共由脈沖信號模塊,交通燈模塊,控制模塊,倒計時模塊四部分組成,如下圖1所示。
主干道
A1
A2
A3
控制
模塊
倒計時
模塊
脈沖信號模塊
發生器
T0
支干道
B1
B2
B3
圖1
交通燈控制系統原理框圖
整個系統的核心是利用能夠進行60進制、30進制以及5進制并切換的減法計數器,在譯碼器及與非門的配合下實現交通燈信號燈的切換。
1.脈沖信號模塊
信號的產生采用555定時器構成的多諧振蕩器。取R1=10kΩ,C2=10uF,通過
f=1tpL+tph≈1.43R1+2R2C2=1
設計計算得R2≈66kΩ,此處采用100kΩ滑動變阻器。
設計如下圖2所示的多諧振蕩器,產生1Hz的方波周期信號。
圖2
多諧振蕩器
2.交通燈模塊
設主干道紅燈、黃燈、綠燈分別為A1、A2、A3;支干道紅燈,黃燈、綠燈分別為B1、B2、B3,如下圖3所示。
圖3
交通燈模塊
3.控制模塊
使用74LS163N十進制計數器構成三進制的加法計數器,同時用與非門控制三個顏色交通燈的亮與滅。
74LS163N的CP信號由倒計時模塊高位74LS192N的BO控制。即每當倒計時的高位產生借位信號時通過BO傳給74LS163N一個信號使之變燈。
令前述的a,b,c,d四種交通燈狀態依次為00,01,10,11,以74163N的QA,QB輸出。
主干道紅燈、黃燈、綠燈分別為A1、A2、A3;支干道紅燈,黃燈、綠燈分別為B1、B2、B3。可得真值表如下。
QB
QA
A1
A2
A3
B1
B2
B3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
由真值表化簡可得各信號燈的邏輯表達式:
A1=QB,A2=QBQA,A3=QBQA,B1=QB,B2=QBQA,B3=QBQA
故采用與非門控制連接交通燈和74LS163N如下圖4:
圖4
74163N和與非門構成的交通燈控制模塊
4.倒計時模塊
倒計時模塊由減法計數器和7段數碼管顯示器組成。
十字路口的交通燈要有數字顯示,且是倒計時,以便人們能夠更好的把握好時間。具體的工作方式為:當主干道的綠燈亮時,將顯示器置為60s,然后每秒減1,計數方式工作,直至減到數為00,此時變燈并置05s,再執行每秒減1,減到00后變燈并置30s,遞減。一次工作循環結束,而進入下一工作循環。
倒計時模塊選用兩片74LS192級聯,通過將低位的借位端BO與高位的減數計數控制端DOWN連接,構成減法計數器。CP由多諧振蕩器的輸出端接到低位74LS192的減數計數控制端DOWN控制。
預置端LOAD接高電平時計數,接低電平時預置數。因此,工作開始時,LOAD為0,計數器預置數,置數后,LOAD變為1,計數器開始倒計時,當倒計時減到數00時,LOAD又變為0,計數器又預置數,之后又倒計時,如此循環下去。
這可以借助兩片74190的借位端BO來實現,用或門將兩個BO連起來,再接在預置數端LOAD上。當倒計時減到數00時,兩個BO均產生一低電平信號,通過或門使兩片74190的LOAD端置數。
由于四種狀態的置數各不相同,設高位74LS192N的置數端依次為DH,CH,BH,AH,低位的置數端依次為DL,CL,BL,AL,由前述的真值表和8位置數端在各狀態下的取值,分析可得,DH=0,CH=A3,BH=QA,AH=B3
DL=0,CL=QA,BL=0,AL=QA
故可利用信號燈和74163N輸出端的信號結合與非門控制置數端在不同狀態下的取值。設計如下圖5
圖5
減法計數器和7段數碼管顯示器構成的倒計時模塊
三、電路的測試與仿真
狀態a:
符合設計要求1:一般情況下,保持主干道暢通,主干道路綠燈亮、支干道紅燈亮,并且主干燈亮的時間不少于60
S;
狀態b:
符合設計要求3:每次主干道或支干道綠燈亮變紅燈時,黃燈先亮5S。
狀態c:
符合設計要求2:當主干道綠燈亮超過60
S,且支干道有車時,主干道紅燈亮,支干道綠燈亮,但支干道綠燈亮的時間不得超過30S;
狀態d:
符合設計要求3:每次主干道或支干道綠燈亮變紅燈時,黃燈先亮5S。
綜上所述:該交通燈符合設計要求。
四、總結
這次數電設計對我是一個很大的挑戰。一開始時我完全沒有思路,后來通過在網上查閱了一些文獻,理清了設計過程,明白了無論多復雜的功能結構,都要先分析要設計哪些模塊,再將各個模塊分別設計,最后匯總。
還有在設計時一定要了解清楚芯片各個針腳的功能,否則會遇到很多麻煩。在設計時我用到74LS192芯片,但由于網上資料不夠詳細,我對于BO端口的功能不是很清楚,導致起初我一直以為只要減法計數器減到0時BO就一直為低電平輸出,使我無法設計置位端LOAD。后來我才了解到BO端口是在計數器為0時再減1的瞬間產生一個短暫的負向脈沖,正是利用這個原理才使我的設計得以完成。
同時由于我采用的multisim14版本有些原因不明的bug,也為我的調試帶來了許多問題。在我的設計圖中,我在倒計數模塊的或門輸出端接了一個開關,是因為如果去掉這個開關,直接用導線連接,就會導致通電時計數器只從60跳到59就卡住,不再工作。加一個開關也是我調試了好久才發現的解決辦法。
總之這次數電項目設計使我對上課時學到的知識有了更深入的認識,更使我體會到了設計的流程和思路,也了解到了設計時常遇到的一些問題和解決方法。
第四篇:數字電子技術課程設計(模版)
數字電子技術課程設計
一、設計題目
1、多功能數字鐘的設計
設計要求:設計一個多功能數字鐘,要求能準確計時,并以數字形式顯示時、分、秒的時間,能校正時間。
2、數字頻率計的設計
設計要求:設計一個數字頻率計,要求可以測量方波、正弦波、三角波的頻率,并以四位十進制數字表示。
3、多路數字式競賽搶答器的設計
設計要求:設計一個可供六組參賽的數字式競賽搶答器,每組設計一個搶答按鈕,要求具有第一搶答信號的鑒別和鎖存功能,具有計分及計時功能,設置犯規報警。
4、病房呼叫系統
設計要求:用1~5個開關模擬5個病房的呼叫輸入信號,1號優先級最高;1~5優先級依次降低; 用一個數碼管顯示呼叫信號的號碼;沒信號呼叫時顯示0;有多個信號呼叫時,顯示優先級最高的呼叫號(其它呼叫號用指示燈顯示);凡有呼叫發出的呼叫聲;對低優先級的呼叫進行存儲,處理完高優先級的呼叫,再進行低優先級呼叫的處理。
5、籃球24S倒計時
設計要求:具有顯示24S計時功能;設置外部操作開關,控制計時器的直接清零、啟動和暫停連續功能計時器為24S遞減計時器,其計時時間間隔為1S,計時器減計時到零時,發出報警信號。
6、16路數顯報警器
設計要求:設計16路數顯報警器,16路中某一路斷開時(可用高低電平表示斷開和接通),用十進制數顯示該路編號,并發出聲音信號;報警時間持續10秒鐘;當多路報警時,要有優先級,并將低優先級的報警存儲,處理完高優先級報警后,再處理之。
7、六十進制計數器。
設計要求:能實現六十進制計數,采用數碼顯示數字,有暫停功能,方波產生電路可不必設計。
8、電子門鈴
設計要求:設計一個電子門鈴,響聲為“嘀嘀”聲,或者叮咚聲等;響聲持續20S9、故障指示電路
設計要求:
1、一臺設備出故障,黃燈亮;兩臺設備出故障,紅燈亮;三臺設備出故障,黃燈和紅燈都亮。
2、設備工作或故障可用開關來模擬
二、課程設計說明書與圖紙要求
課程設計說明書包括內容:
1.設計任務及主要技術指標和要求;
2.選定方案的論證及整體電路的工作原理;
3.單元電路的設計計算,元器件選擇,電路圖;
4. 按國家有關標準畫出整體電路圖,列出元件、器件明細表;
5.對設計成果作出評價,說明本設計特點和存在的問題,提出改進意見,心得體會。
第五篇:基于FPGA的交通燈控制電路設計
基于FPGA的交通燈控制電路設計
關鍵字: 交通信號機 FPGA 脈沖發生器
目前交通燈廣泛應用于道路交通建設中。本文設計一個十字路口交通燈控制電路,要求東西、南北兩條干道的紅、綠、黃交通燈按要求循環變化,并以倒計時方式指示干道通行或禁止的維持時間。在QuartusⅡ軟件環境中設計、仿真,并在FPGA實驗板上實現所設計電路的功能。
系統概述
1.1 設計思想
基于FPGA的交通燈系統控制設計包括4大模塊,分別為脈沖發生、狀態定時、交通燈閃爍的控制、閃爍時間的控制,基本原理如圖1所示。
1.2 總體工作情況
交通燈控制要求如表1所示。
該設計的交通燈控制分為6個狀態。由于各狀態持續時間不同,所以電路的核心控制部分是狀態機和定時器,狀態機在定時器觸發下周期性循環,狀態碼控制6個燈以一定的規律變化。變化情況如圖2所示。
系統脈沖由FPGA開發板晶振經過分頻電路實現。狀態定時由74190可逆十進制計數器和T’觸發器實現,只要置數合理,翻轉信號到位,就可以使電路在東西(I)、南北(J)兩個控制狀態間翻轉。紅、黃、綠燈的閃爍由7485數字比較器和組合邏輯控制,其中7485數字比較器用于比較計數器當前持續狀態和所需要的狀態全部時間,并做出相應的變化。組合邏輯控制由AHDL文件編寫真值表實現。時間顯示由AHDL文件編寫真值表實現,輸入正確的邏輯,七段譯碼電路即能得到正確的時間顯示。
1.3 各功能的組成
整個電路可以分為4大部分,包括脈沖發生、狀態定時、時間顯示和數字比較一組合邏輯控制。
1.3.1 脈沖發生
脈沖發生器為整個系統提供驅動,將輸入端分配給FPGA實驗板的PIN55引腳,則會由實驗板上產生頻率為10 MHz的輸入脈沖,用7片7490,每一級都構成10分頻電路,使頻率從10 MHz降低為1Hz。
1.3.2 狀態定時
狀態定時可由預置BCD碼初值的74190級聯實現,構成減計數器。級聯原則是:低位計數器從全0狀態變為最大碼值狀態時可使高位計數器減1。級聯方式分為異步和同步兩種,本文采取的是異步級聯方式,即低位計數器溢出信號控制高位計數器的記數脈沖輸入端。可根據計數器的時鐘觸發方式,在低位計數器狀態碼從全“0”變為最大碼值的瞬間,為高位計數器提供有效的計數脈沖邊沿。具體做法是將低片位的溢出信號RCON端口接到高片位的計數脈沖CLK,實現兩位BCD碼的置數、翻轉和借位,使系統表示的數字能在22~16之間循環。
74190功能說明:
(1)GN為計數器使能控制端,低電平有效。當GN為高電平時,禁止計數。
(2)DNUP為計數方式控制,接高電平為減計數,接低電平為加計數。
(3)LDN為異步預置數控制。當LDN為低電平時,計數器狀態QD,QC,QB,QA分別等于D,C,B,A。
(4)計數器位序由高至低順序為QD,QC,QB,QA。QD為最高位MSB,QA為最低位LSB。
(5)計數脈沖CLK上升沿有效。
(6)當計數器輸出QDQCQBQA為十進制加計數的最大狀態碼“1001”或為減計數的最小狀態碼全“0”時,極值狀態碼指示MAX/MIN輸出為高電平。
(7)當極值狀態碼指示MAX/MIN為高電平且CLK為低電平時,溢出信號RCON為低電平,即RCON與計數脈沖同步。
系統記數脈沖為1 Hz時,如表2所示,當I狀態(東西控制狀態)的定時時間為22 s,計數器應該先預置22的BCD碼;同理,J狀態(南北控制狀態)之前應該預置16的BCD碼。
狀態計時電路由兩片74190級聯而成,構成22和16自翻轉的電路。其要解決的核心問題包括置數,翻轉和借位。根據74190芯片的特點,可分析其實現原理如圖4所示,通過溢出信號RCON的上升沿實現借位,使得數字能夠從20到19,個位向十位借位,順利過渡。
置數和翻轉之間有先后關系,即須先置數后翻轉。如表3所示,分析兩個BCD碼各位特點,可知兩者D7D6D3D0位均為1,D1位均為0,而D5D4D2位不同,如圖5,D5D4D2位由狀態電平S來控制,當為I狀態時,計數器的預置的數為D5=0,D4=D2=1,而為J狀態時,計數器的預置的數為D5=1,D4=D2=0,根據74190的功能,將2片74190的MAX/MIN引出,通過與非門,分別連在高位和低位的LDN置數端,通過分析可知,當計數器從01減到00時候,高低位的MAX/MIN均為高電平,經過與非門以后為低電平,74190被置數,其置數值由狀態S來決定,S是由LDN端信號經過一個T’觸發器決定的,即LDN信號每置數一次,S翻轉1次,從而區分16和22狀態。按這個結構,可分別置數16和22,使其實現自翻轉。
圖5為狀態定時模塊的實際連接圖。
1.3.3 時間顯示
時間顯示要用到7段顯示譯碼電路,由于是兩位BCD碼,故用二選一數據選擇器。選擇端S接一個頻率很高的方波(如1 kHz);數據比較器的輸出和1 Hz脈沖作為AHDL模塊的輸入,即可正確顯示時間。
為正確顯示時間,用AHDL文件自編譯碼真值表如下:
1.3.4 數字比較一組合邏輯控制
該模塊將狀態定時模塊輸出的時間與時間節點進行比較,從而確定電路處于22 s或者16 s的具體的某個狀態。由表1可知,東西(I)或南北(J)的控制狀態都有3個階段的控制邏輯,分別對應3個時間段:1~3 s,4~6 s和大于6 s,因此,采用數字比較器進行比較,確定定時值小于4 s或大于6 s,方法如圖7所示,采用4片7485數字比較器,兩兩級聯,其中一個由狀態定時模塊的輸出與4即二進制0100比較;另一個由狀態定時模塊的輸出與6即二進制0110比較。
編寫組合邏輯真值表,將狀態信號S,兩個數字比較器的輸出Y1,Y2和1 Hz脈沖作為輸入,各個燈的狀態作為輸出。從而根據邏輯關系得出對應時間電路的狀態,控制紅、黃、綠燈處于不同的狀態。S判斷電路處于22 s狀態還是16 s狀態,Y1,Y2區分東西、南北六個階段狀態,1 Hz脈沖實現綠燈閃爍。電路的組構與調試
來用QuartusⅡ軟件設計各個模塊,并進行仿真。確認結果后,下載至FPGA實驗板中,進行相應的硬件調試,調試結果與仿真結果相一致。圖8為仿真波形,系統上電需要調整的過程,因此電路正常工作前重復了22s的狀態。