本課程設計是在學完單片機原理及課程之后綜合利用所學單片機知識完成一個單片機應用系統(tǒng)設計并在實驗室實現。該課程設計的主要任務是通過解決一、兩個實際問題,鞏固和加深“單片機原理與應用”課程中所學的理論知識和實驗能力,基本掌握單片機應用電路的一般設計方法,提高電子電路的設計和實驗能力,加深對單片機軟硬知識的理解,獲得初步的應用經驗,為以后工作打下一定的基礎。
在今天,紅綠燈安裝在各個道口上,已經成為疏導交通車輛最常見和最有效的手段。但這一技術在19世紀就已出現了。交通信號燈的出現,使交通得以有效管制,對于疏導交通流量、提高道路通行能力,減少交通事故有明顯效果。通過三個星期的學習,本人對單片機的結構和功能已有了初步的了解和認識。單片機在交通控制中起到了舉足輕重的作用,掌握了單片機的工作原理也就基本了解了交通燈的運做原理。作為一個學生,為了更好地掌握單片機的結構和功能,為了進一步加強自己的實踐能力,本人設計了以下的一款交通燈。
一、工程簡介
(一)、概述
本設計是交通燈的控制實驗,必須要先了解實際交通燈的變化規(guī)律。假設一個路口為東西南北走向,即十字路口,初始狀態(tài)零為東西南北燈都熄滅。然后轉狀態(tài)一東西綠燈通車,南北為紅燈。過段時間轉狀態(tài)二,東西綠燈閃幾次轉黃燈,延時幾秒,南北仍為紅燈。再轉狀態(tài)三南北綠燈通車,東西紅燈。過段時間轉狀態(tài)四南北綠燈閃幾次轉黃燈,延時幾秒,東西仍為紅燈。最后循環(huán)至狀態(tài)一。交通信號燈模擬控制系統(tǒng)設計利用單片機的定時器定時,控制十字路口紅綠燈交替電亮和熄滅,并且用LED數碼管顯示時間,但由于時間及水平的不足,在此實驗中不顯示。用十二個發(fā)光二極管代替交通燈進行實驗設計。
這次設計是《微機接口與控制技術》課程的綜合訓練,我們通過理論學習,課題選擇,資料查閱,軟、硬件設計,系統(tǒng)調試等環(huán)節(jié),鞏固所學的知識及提高應用水平.在此我們要學會從提出問題,觀察與分析問題,到最終解決問題科學方法.提高自己的思維能力和動手能力,在設計中獲得一些實操經驗,更是要培養(yǎng)我們的工作作風和工作態(tài)度。為今后的畢業(yè)設計、及從事微機控制系統(tǒng)的設計與維護奠定堅實的基礎。
這次課題設計的意義在于通過具體的控制系統(tǒng)的設計,掌握微機控制系統(tǒng)設計的一般方法和處理問題的思路,特別是一些常用的技術手段。使我們能在實踐教學環(huán)境中累積設計經驗,開拓思維空間,全面提高個人的綜合能力。
(二)、工藝流程圖
因為本實驗是交通燈控制實驗,所以要先了解實際交通燈的變化規(guī)律。假設一個十字路口為東西南北走向。初始狀態(tài)0為東西南北燈都熄滅。然后轉狀態(tài)1東西綠燈通車,南北紅燈。過一段時間轉狀態(tài)2,東西綠燈閃幾次轉亮黃燈,延時幾秒,南北仍然紅燈。再轉狀態(tài)3,南北綠燈通車,東西紅燈。過一段時間轉狀態(tài)4,南北綠燈閃幾次轉亮黃燈,延時幾秒,南北仍然紅燈。最后循環(huán)至狀態(tài)1。交通信號燈模擬控制系統(tǒng)設計利用單片機的定時器定時,令十字路口的紅綠燈交替點亮和熄滅,并且用LED數碼管顯示時間,但由于時間和水平的限制就不顯示時間。用十二個發(fā)光二極管燃滅,模擬交通燈管理。具體的接口如下圖一。
二、工程設計
(一)、控制方案的確定
交通燈控制系統(tǒng)的原理主要由控制器、定時器、譯碼器和秒脈沖信號發(fā)生器等部分組成。秒脈沖發(fā)生器是該系統(tǒng)中定時器和控制器的標準時鐘信號源,譯碼器輸出兩組信號燈的控制信號,經驅動電路后驅動信號燈工作,控制器是系統(tǒng)的主要部分,由它控制定時器和譯碼器的工作。如圖2完整的電路板。
圖2完整的電路板
(二)、硬件部分
(1)、交通燈控制系統(tǒng)的硬件設計:
交通燈控制系統(tǒng)的硬件設計包括:存儲器的擴展(62256),I/O口的擴展(8255),地址的鎖存(74LS373或74LS273),還有反向器(7407)。
數據緩沖器,I/O控制邏輯,控制和定時寄存器及定時與控制電路,掃描計數器,回復緩沖器,FIFO /傳感器RAM及其狀態(tài)寄存器,顯示RAM及顯示地址寄存器等組成。
(2)、硬件系統(tǒng)的設計具備以下原則:
1.滿足系統(tǒng)的設計要求,易于操作維護。
2.系統(tǒng)功能靈活,便于擴展。
3.具有自動診斷功能。
(3)、硬件結構框圖(如圖3所示)。
硬件系統(tǒng)在該系統(tǒng)中的作用主要是進行數據的傳送,有關邏輯的計算,并且提供顯示,人為的進行數據的修改,系統(tǒng)的啟動,停止等等。此外系統(tǒng)運行的安全可靠性要靠硬件系統(tǒng)來實現。
(4)、交通燈控制系統(tǒng)的原理框圖(如圖4所示)。
圖4 交通燈控制系統(tǒng)的原理框圖
圖中:
TL: 表示甲車道或乙車道綠燈亮的時間間隔為25秒,即車輛正常通行的時間間隔。定時時間到,TL=1,否則,TL=0。
TY:表示黃燈亮的時間間隔為5秒。定時時間到,TY=1,否則,TY=0。
ST:表示定時器到了規(guī)定的時間后,由控制器發(fā)出狀態(tài)轉換信號。由它控制定時器開始下個工作狀態(tài)的定時。
1.定時器
定時器由與系統(tǒng)秒脈沖(由時鐘脈沖產生器提供)同步的計數器構成,要求計數器在狀態(tài)信號ST作用下,首先清零,然后在時鐘脈沖上升沿作用下,計數器從零開始進行增1計數,向控制器提供模5的定時信號TY和模25的定時信號TL。(電路圖如圖5所示)
圖5 定時器電路圖
2.控制器
控制器是交通管理的核心,它應該能夠按照交通管理規(guī)則控制信號燈工作狀態(tài)的轉換。從ASM圖可以列出控制器的狀態(tài)轉換表,如表1所示。選用兩個D觸發(fā)器FF1、FFO作為時序寄存器產生 4種狀態(tài),控制器狀態(tài)轉換的條件為TL和TY,當控制器處于Q1n+1Q0n+1= 00狀態(tài)時,如果TL= 0,則控制器保持在00狀態(tài);如果,則控制器轉換到Q1n+1Q0n+1= 01狀態(tài)。這兩種情況與條件TY無關,所以用無關項"X"表示。(控制器邏輯圖如圖6所示)
根據表1可以推出狀態(tài)方程和轉換信號方程,其方法是:將Q1n+1、Q0n+1和 ST為1的項所對應的輸人或狀態(tài)轉換條件變量相與,其中"1"用原變量表示,"0"用反變量表示,然后將各與項相或,即可得到下面的方程:
? ? ? ??
控制器邏輯圖(如圖6所示)
圖6
3.譯碼器
74.LS138譯碼器
74LS138譯碼器有3個輸入端,組成8種輸入狀態(tài),輸出端有8個,每個輸出端對應8種輸入狀態(tài)的一種,低電平有效。此外還有3個使能端E3,E2,E1,這3個使能端必須同時輸入有效電平,譯碼器才能工作,既E3=1,E2=0,E1=0。
譯碼器的主要任務是將控制器的輸出 Q1、 Q0的4種工作狀態(tài),翻譯成甲、乙車道上6個信號燈的工作狀態(tài)??刂破鞯臓顟B(tài)編碼與信號燈控制信號之間的關系如表 12、4所示。實現上述關系的譯碼電路請讀者自行設計。
4.交通燈驅動電路(如圖7所示)
圖 7
5.電路圖(如附錄B)及電路圖說明
電路圖說明
1.這個LED動態(tài)顯示電路用了一個單片機的一個I/O口P0口。
2.P0口的低四位輸出顯示數字的BCD碼,輸出的BCD碼送到74LS138中進行譯碼。然后輸出段代碼經上拉電阻上拉后送到顯示器的各顯示段的引腳。
3..P03、P04、P05這三個口輸出位選信號。位選信號送到74LS138中經譯碼產生顯示器的位選信號。
4.當輸出短代碼后,低電平的端口將會把這個口的電平拉低。所以此時發(fā)光二極管將不發(fā)光,而高電平的端口則會向這個發(fā)光二極管的陽極提供一個高電平,只要這個位被選中,那么這個發(fā)光二極管將發(fā)光,在在段代碼表找查找就能出現響應的數字。每一個位選電路由一個PNP三極管組成。當位選口發(fā)出低電平,那么這一位的三極管就會飽和導通,由于顯示器是共陰的內部結構,所以當三極管飽和導通時相當于將顯示器接地。
5.當脈沖到MCS—51單片機時,LED8位顯示器就接收信號,并將信號儲存到擴展寄存器中,當P0口的低四位輸出顯示數字的BCD碼,輸出的BCD碼送到74LS138譯碼器譯碼,然后在顯示提示符段碼中查詢顯示數字。
6.前面四位顯示干道通行時間,后面四位顯示支道時間,通過LED顯示器的顯示來控制車輛的放行、禁行情況。
(5)、8279的結構及引腳功能:
8279的內部結構由數據緩沖器,I/O控制邏輯,控制和定時器及定時控制電路,掃描計數器,回復緩沖器,FIFO/傳感器RAM及其狀態(tài)寄存器,顯示RAM及顯示地址寄存器等部分組成.
(a)數據緩沖器及I/O控制邏輯 數據緩沖器是一個雙向緩沖器,它連接內部總線和外部總線,用于傳送CPU和8279之間的命令,數據和狀態(tài).I/O控制邏輯完成對芯片的讀寫控制,芯片選擇以及端口選擇.
(b)控制和定時器及定時用來寄存操作命令字.
(c)掃描計數器 掃描計數器有兩種工作方式.一種為外部譯碼方式.計數器以二進制方式計數,4位計數狀態(tài)從掃描線SL0-SL3輸出,經外部譯碼器譯碼后,形成16位掃描信號;另一種為內部譯碼方式.該方式下,掃描計數器的低二位經內部譯碼后從SL0-SL3輸出,形成4位掃描信號.
(d)回復緩沖器, 回復緩沖器緩沖并鎖存來自SL0-SL7八根回復線的回復信號.
(e)FIFO/傳感器RAM及其狀態(tài)寄存器 FIFO/傳感器RAM是一個雙重功能的8*8RAM.
(f)顯示RAM及顯示地址寄存器 顯示RAM用來存儲顯示數據,容量為16*8位.在顯示過程中,存儲的顯示數據輪流從顯示寄存器輸出.
在燈火控制實驗中,它的片選信號線接Q0、數據選擇輸入線接的是Q1,所以他的控制口地址是FF82H,數據口地址是FF80H,中斷是懸空的。
8051最小應用系統(tǒng)
8051是片內無程序存儲器的供應狀態(tài)芯片.因此,其最小應用系統(tǒng)必須在片外擴展EPROM.外接程序存儲器的地址線A8-A15由P2口提供;A0-A7由P0口通過地址鎖存器提供. 地址鎖存器的鎖存信號為ALE.指令數據由P0口讀入.程序存儲器的取指信號為/ALE.其片選線直接接地.同時必須有單位及時鐘電路.
8255可編程接口芯片
三個并行I/O口-A口,B口,C口在此設計中用到了A,B兩個口。
1)工作方式控制電路;
2)讀寫控制邏輯電路;
數據總線緩沖器;
(三)、軟件部分
(1)、延時子程序的計算:
采用寄存器R0、R1、R2作為記數值,R2中暫存1,R1中存0。當減1后變?yōu)?55即R1中存數256。R0中存數#0B2H即178。各指令共占指令周期數為(見圖延時程序后所附)
DELAY2延時為:
N=(2+2+2+1+1+2*178)+255*(1+1+2+2*178)=9164。
共計9164個指令周期,而系統(tǒng)晶振為11.0592。所以T=12/11.0592=1.085(微秒)
延時DELAY2為:
t=9164*1.085/1000000=0.09996
約等于0.1(秒)
通過改變R2的值可以改變延時的秒數。
(2)、流程圖(如圖8所示)
首先四個路口所有的燈滅,在東西綠燈亮南北紅燈亮延時20s,綠燈閃三下,為3秒轉黃燈亮2秒 ,在南北綠燈亮東西紅燈亮延時20s,綠燈閃三下,為3秒轉黃燈亮2秒 ,如此循環(huán)。
(3)、源程序(如附錄A)
(4)、程序的執(zhí)行的表達(如表2)
狀態(tài) | 持續(xù)時間/S | 東西方向 | 南北方向 | ||||
綠 | 黃 | 紅 | 綠 | 黃 | 紅 | ||
1 | 50 | 亮 | 滅 | 滅 | 滅 | 滅 | 亮 |
2 | 3 | 閃 | 滅 | 滅 | 滅 | 滅 | 亮 |
3 | 2 | 滅 | 亮 | 滅 | 滅 | 滅 | 亮 |
4 | 50 | 滅 | 滅 | 亮 | 亮 | 滅 | 滅 |
5 | 3 | 滅 | 滅 | 亮 | 閃 | 滅 | 滅 |
6 | 2 | 滅 | 滅 | 亮 | 滅 | 亮 | 滅 |
循環(huán) |
三、系統(tǒng)的試調運行
(一)、硬件調試
利用DVCC實驗與開發(fā)系統(tǒng)、基本測試儀器(萬用表、示波器等),檢查用戶系統(tǒng)硬件中存在的故障。其中硬件調試可分為靜態(tài)調試與動態(tài)調試兩步進行。
(1)、靜態(tài)調試
是在用戶系統(tǒng)未工作時的一種硬件檢測。
第一步:目測。檢查外部的各種元件或者是電路是否有斷點。
第二步:用萬用表測試。先用萬用表復核目測中有疑問的連接點,再檢測各種電源線與地線之間是否有短路現象。
第三步:加電檢測。給板加電,檢測所有插座或是器件的電源端是否符合要求的值
第四步:是聯機檢查。因為只有用單片機開發(fā)系統(tǒng)才能完成對用戶系統(tǒng)的調試。
(2)、動態(tài)調試
是在用戶系統(tǒng)工作的情況下發(fā)現和排除用戶系統(tǒng)硬件中存在的器件內部故障、器件連接邏輯錯誤等的一種硬件檢查。動態(tài)調試的一般方法是由近及遠、由分到合。由分到合是指首先按邏輯功能將用戶系統(tǒng)硬件電路分為若干塊,當調試電路時,與該元件無關的 器件全部從用戶系統(tǒng)中去掉,這樣可以將故障范圍限定在某個局部的電路上。當各塊電路無故障后,將各電路逐塊加入系統(tǒng)中,在對各塊電路功能及各電路間可能存在的相互聯系進行調試。由分到合的調試既告完成。由近及遠是將信號流經的各器件按照距離單片機的邏輯距離進行由近及遠的分層,然后分層調試。調試時,仍采用去掉無關元件的方法,逐層調試下去,就會定位故障元件了。
四、系統(tǒng)設計及總結特點
通過這次的課程設計,讓我受益匪淺,也讓我了解和掌握了一些編程思想和對I/O口的使用和應用的條件的思考,對單片機的各個管腳功能的理解和掌握。實現了軟件和硬件的有效結合,缺一不可。設計讓我把單片機的理論知識用在實踐中,實現了理論和實踐相結合,從中更懂得理論的是實踐的基礎,實踐有能檢驗理論的正確性,更激發(fā)了我對專業(yè)知識的渴求,這些對我以后參加工作或者繼續(xù)學習都會有很大的幫助和影響。
這次課程設計也讓我學會了撰寫論文,懂得了論文的要素,這些對于我在以后寫畢業(yè)設計論文有很大的幫助,并且在我將來的工作中也會有很多益處。在撰寫論文中,也使我在單片機的基本原理、單片機應用系統(tǒng)開發(fā)過程,以及在常用編程設計思路技巧的掌握方面都能向前邁了一大步,為日后成為合格的應用型人才打下良好的基礎。
而作為一位學生,在對交通燈的設計中,因知識和經驗的不足,只能通過模仿其它的編程思路,再加上一些自己的思想去完成這個設計,因此在各個方面都會有一些不足,敬請指正。但我會在以后的學習中逐漸去完善、鞏固我的單片機知識。
審核編輯:劉清
-
單片機
+關注
關注
6058文章
44821瀏覽量
644713 -
led數碼管
+關注
關注
2文章
73瀏覽量
22396 -
定時器
+關注
關注
23文章
3272瀏覽量
116709 -
交通燈
+關注
關注
13文章
324瀏覽量
40055 -
信號發(fā)生器
+關注
關注
28文章
1537瀏覽量
109888
原文標題:基于單片機控制的交通燈畢業(yè)設計資料
文章出處:【微信號:A1411464185,微信公眾號:multisim】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論