版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、<p><b> 專業(yè)課程設計說明書</b></p><p> 題目: 基于單片機的交通燈控制設計 </p><p> 院 (系): 興湘學院 </p><p> 專 業(yè):機械設計制造及其自動化 </p><p> 學 號:
2、 </p><p> 姓 名: </p><p> 指導教師: </p><p> 完成日期: 2014年2月28 日 </p><p><b> 摘要</b></p><p> 隨著生
3、活水平的提高,汽車越來越普及。因此,紅綠燈安裝在各個道口上,也漸漸成為了疏導交通車輛最常見和最有效的手段。信號燈的出現(xiàn),使交通得以有效管制,對于疏導交通流量、提高道路通行能力,減少交通事故有明顯效果。本系統(tǒng)采用80C51單片機為中心器件來設計交通燈控制器,實現(xiàn)了實時顯示當前通行剩余時間;按東西道紅燈和南北道綠燈亮22秒后東西道、南北道黃燈閃爍3秒,再東西道綠燈和南北道紅燈亮27秒,之后黃燈閃爍3秒的規(guī)律控制東西和南北方向的交通燈;能手動
4、設置通行方向3種功能。4位數(shù)碼管顯示剩余通行時間,2位顯示東西方向通行剩余時間,2位顯示南北方向通行剩余時間。本系統(tǒng)實用性強、操作簡單、擴展功能強。</p><p> 關鍵詞:單片機 交通燈 動態(tài)掃描 自動控制 手動設置</p><p><b> 目錄</b></p><p> 一、設計目的 ……………………………
5、……………………4</p><p> 二、設計任務和要求 …………………………………………………5</p><p> 三、設計原理分析 …………………………………………………6</p><p> 四、硬件資源及其分配 …………………………………………………8</p><p> 五.硬件圖 …………………
6、………………………………11</p><p> 六、程序框圖 …………………………………………………12</p><p> 七、程序 …………………………………………………13</p><p> 八、調(diào)試運行 …………………………………………………17</p><p> 九、仿真
7、截圖 …………………………………………………18</p><p> 十、設計心得體會 …………………………………………………20</p><p><b> 一、設計目的</b></p><p> 1、通過單片機課程設計,熟練掌握匯編語言的編程方法,將理論聯(lián)系到實踐中去,提高我們的動腦和動手的能力。</p>
8、;<p> 2、通過交通信號燈控制系統(tǒng)的設計,掌握定時/計數(shù)器及中斷的使用方法,和簡單程序的編寫,最終提高我們的邏輯抽象能力。</p><p><b> 二、設計任務和要求</b></p><p> 任務:設計一個能夠控制十二盞交通信號燈的模擬系統(tǒng)</p><p> 要求:利用單片機的定時器定時,令十字路口的紅綠燈交替點亮
9、和熄滅,并用LED燈顯示倒計時間。1、東西綠燈亮,南北紅燈亮 2、黃燈亮 3、東西紅燈亮,南北綠燈亮 </p><p><b> 三、設計原理分析</b></p><p> 圖3-1 設計原理圖</p><p> 1、首先了解實際交通燈的變化情況和規(guī)律。假設一個十字路口如上圖所以,為東南西北走向。初始狀態(tài)0:為東西綠燈亮,南北紅燈亮
10、;然后轉(zhuǎn)狀態(tài)1:東西綠燈亮黃燈亮,南北紅燈亮黃燈亮;過后轉(zhuǎn)狀態(tài)2:東西紅燈亮,南北綠燈亮;再轉(zhuǎn)狀態(tài)3:東西紅燈亮黃燈亮,南北綠燈亮黃燈亮。一段時間后,又循環(huán)至狀態(tài)0。中間可通過中斷按鈕產(chǎn)生中斷,跳入中斷程序執(zhí)行中斷。</p><p> 列出交通信號燈的狀態(tài)表如下:(其中,1代表燈亮,0代表燈滅)</p><p> 表3-1 交通燈狀態(tài)表</p><p> 2、
11、對于交通信號燈來說,應該有東西南北共四組燈,但由于同一道上的兩組的信號燈的顯示情況是相同的,所以只要用兩組就行了,因此,采用單片機內(nèi)部的I/O口上的P1口中的6個引腳即可來控制6個信號燈。</p><p> 3、通過編寫程序,實現(xiàn)對發(fā)光二極管的控制,來模擬交通信號燈的管理。每延時一段時間,燈的顯示情況都會按交通燈的顯示規(guī)律進行狀態(tài)轉(zhuǎn)換。</p><p> 4、通過延時時間送顯,可以在原
12、有的交通信號燈系統(tǒng)的基礎上,增添其倒計時間的顯示功能,實現(xiàn)其功能的擴展。</p><p> 5.通過脈沖中斷編寫中斷程序,可實現(xiàn)中斷。</p><p> 四、硬件資源及其分配</p><p> 主要用到的硬件:P1口、P3口、LED數(shù)碼管、LED發(fā)光二級管、定時器T0</p><p><b> 硬件分配:</b>
13、</p><p> 1、P1口:做為輸出口,與發(fā)光二極管相連接,其狀態(tài)及對應的十六進制值如下:</p><p> 表4-1 狀態(tài)及對應的十六進制指</p><p> 2、P3口中的P3.0(RXD)和P3.1(TXD)作特殊用途,數(shù)據(jù)(倒計時時間)從RXD端輸入,TXD端輸出。</p><p> 3、LED發(fā)光二極管用來顯示燈亮情況。
14、</p><p> 4、定時/計數(shù)器T0用來產(chǎn)生1秒的定時</p><p> 5.Led顯示器十位與p0相連接,個位與p2連接用來顯示時間,下面是LED顯示接口及原理。</p><p> 1 LED是發(fā)光二極管的英文縮寫,LED顯示器是由發(fā)光二極管構(gòu)成的,它在單片機中的應用非常普遍。通常所說的LED顯示器由7個發(fā)光二極管組成,其排列形狀如圖所示。此外,顯示器
15、中還有一個圓點型發(fā)光二極管以dp表示,用于小數(shù)點表示。通過七個發(fā)光二極管亮暗的不同組合,可以顯示多種數(shù)字、字母以及其它符號。LED顯示中的發(fā)光二極管共有兩種連接方法:</p><p> 2 共陽極接法:把發(fā)光二極管的陽極連在一起構(gòu)成公共陽極。使用時公共陽極接+5V。這樣陰極端輸入低電平的段發(fā)光二極管就導通點亮,而輸入高電平的則不亮。</p><p> 3共陰極接法:把發(fā)光二極管的陰極連
16、在一起構(gòu)成公共陰極。使用時公共陰極接地。這樣陽極端輸入高電平的段發(fā)光二極管就導通點亮,而輸入低電平的則不亮。</p><p> 4 控制數(shù)碼管驅(qū)動級的控制電路有靜態(tài)式和動態(tài)式兩類:</p><p> 5 靜態(tài)驅(qū)動:它是指每個數(shù)碼管都要用一個譯碼器譯碼驅(qū)動。</p><p> 6動態(tài)驅(qū)動:它是所的數(shù)碼管使用一個專門的譯碼驅(qū)動器,使各位數(shù)碼管逐個輪流顯示,它的掃描
17、速度極快,因此顯示效果與靜態(tài)驅(qū)動相同。</p><p> 7采用動態(tài)數(shù)碼管顯示,可以大幅度地降低硬件成本和電源的功耗,因為某一時刻只有一個數(shù)碼管工作,就是所謂的分時顯示,顯示所需要的硬件電路可分時復用。</p><p> 共陰極 共陽極 符號和引腳 </p><p> 如表4-2為共陽極與共
18、陰極的代碼表</p><p> 表4-3 十六進制數(shù)字形代碼表</p><p><b> 五.硬件圖</b></p><p><b> 圖5-1 硬件圖</b></p><p><b> 六、程序框圖</b></p><p><b>
19、 1、主程序框圖</b></p><p> 2. 中斷服務程序框圖</p><p><b> 七、程序</b></p><p> #include<reg52.h></p><p> #define port1 P0</p><p> #define port2
20、P2</p><p> sbit green1=P1^0;</p><p> sbit red1=P1^1;</p><p> sbit yellow1=P1^2;</p><p> sbit green2=P1^3;</p><p> sbit red2=P1^4;</p><p>
21、 sbit yellow2=P1^5;</p><p> unsigned char flag=0;</p><p> unsigned char mun=30;</p><p> unsigned char code tab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07, 0x7 F,0x6F};<
22、/p><p> void init_timer0(void)</p><p><b> {</b></p><p> TMOD=0x01;</p><p> TH0=(65536-50000)/256;</p><p> TL0=(65536-50000)%256;</p>&
23、lt;p><b> ET0=1;</b></p><p><b> EA=1;</b></p><p><b> TR0=1;</b></p><p><b> }</b></p><p> void display(unsigned ch
24、ar x)</p><p><b> {</b></p><p> unsigned char m,n;</p><p><b> m=x/10;</b></p><p><b> n=x%10;</b></p><p> port1=tab[
25、m];</p><p> port2=tab[n];</p><p><b> }</b></p><p> void init(void)</p><p><b> {</b></p><p><b> P1=0x00;</b></p&
26、gt;<p> init_timer0();</p><p><b> }</b></p><p> void main()</p><p><b> {init();</b></p><p><b> while(1)</b></p>
27、<p><b> { do</b></p><p><b> {</b></p><p> display(mun);</p><p><b> green1=1;</b></p><p><b> red1=0;</b></p
28、><p><b> green2=0;</b></p><p><b> red2=1;</b></p><p><b> }</b></p><p> while(mun!=3);</p><p><b> do</b>&l
29、t;/p><p><b> {</b></p><p> if(mun==3)</p><p><b> {</b></p><p> yellow1=1;</p><p> yellow2=1;</p><p><b> }&l
30、t;/b></p><p> display(mun);</p><p><b> }</b></p><p> while(mun!=0);</p><p> if(mun==0)</p><p><b> {</b></p><p&g
31、t;<b> mun=30;</b></p><p> yellow1=0;</p><p> yellow2=0;</p><p><b> } </b></p><p><b> do</b></p><p><b> {&l
32、t;/b></p><p> display(mun);</p><p><b> green1=0;</b></p><p><b> red1=1;</b></p><p><b> green2=1;</b></p><p><
33、b> red2=0;</b></p><p><b> }</b></p><p> while(mun!=3);</p><p><b> do</b></p><p><b> {</b></p><p> if(m
34、un==3)</p><p><b> {</b></p><p> yellow1=1;</p><p> yellow2=1;</p><p><b> };</b></p><p> display(mun);</p><p> }
35、while(mun!=0);</p><p> if(mun==0)</p><p><b> {</b></p><p><b> mun=30;</b></p><p> yellow1=0;</p><p> yellow2=0;</p><
36、;p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> void timer(void) interrupt 1 using 1</p><p><b> {</b><
37、/p><p> TH0=(65536-50000)/256;</p><p> TL0=(65536-50000)%256;</p><p><b> flag++;</b></p><p> if(flag==20)</p><p><b> {</b></p&
38、gt;<p><b> flag=0;</b></p><p><b> mun--;</b></p><p><b> }</b></p><p><b> }:</b></p><p><b> 八、調(diào)試運行</
39、b></p><p> 1、接硬件圖接線,為了確保東西南北紅黃綠燈能夠?qū)@示,實驗時,對P1口的接線做了調(diào)整。即,P1.0接綠燈,P1.1接黃燈,P1.2接紅燈,P1.3接綠燈,P1.4接黃燈,P1.5接L3紅燈</p><p> 2、從0100H單元開始連續(xù)運行,觀察六個LED燈是否與交通顯示情況對應,如果有偏差,則單步運行或斷點運行,進行調(diào)試,直至滿足設計要求。</p
40、><p> 3、調(diào)試完燈的顯示后,從0100H開始連續(xù)運行,觀察數(shù)碼管顯示的是否正常,如果不正常,則運用單步運行或斷點運行進行分析和調(diào)試,直至滿足要求。</p><p> 4、整體運行,觀察燈顯示和時間顯示是否都符合要求,如果不符合,則再調(diào)試。直至滿足要求。</p><p><b> 九、仿真截圖</b></p><p&g
41、t;<b> 圖9-1 仿真截圖</b></p><p><b> 圖9-2 仿真截圖</b></p><p><b> 十、設計心得體會</b></p><p> 單片機課程設計很快就結(jié)束了,在課程設計的這段時間里,我不僅學到了許多新的知識,而且加深了我對以前學習的理論知識的掌握。</
42、p><p> 以前我們學的東西僅限于課本,對實實在在的應用還比較模糊,這次課程設計有利于同學們學習目的的明確性和主動性。通過這次課程設計,我們知道了哪些東西是應該確實掌握的,在學校里,沒有實實在在的實習,我們總以為學的東西沒太多用,當我們在課程設計過程中了解到我們學的東西是如此重要時,我們學習的積極性有了,目的性提高了。</p><p> 通過單片機課程設計,我不僅加深了對單片機理論的理解
43、,將理論很好地應用到實際當中去,而且我還學會了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,超越自己。創(chuàng)新,是要我們學會將理論很好地聯(lián)系實際,并不斷地去開動自己的大腦,從為人類造福的意愿出發(fā),做自己力所能及的,別人卻沒想到的事。使之不斷地戰(zhàn)勝別人,超越前人。同時,更重要的是,我在這一設計過程中,學會了堅持不懈,不輕易言棄。設計過程,也好比是我們?nèi)祟惓砷L的歷程,常有一些不如意,也許這就是在對我們提出了挑戰(zhàn),勇敢過,也戰(zhàn)勝了,勝利的鐘聲也就
44、一定會為我們而敲響。</p><p> 這個設計過程中,我們遇到過許多次失敗的考驗,就比如,自己對實際生活中的交通秩序的不了解給整個設計帶來的困擾,真想要就此罷休,然而,就在想要放棄的那一刻,我們明白了,原來結(jié)果并不那么重要,我們更應該注重的是這一整個過程。于是,我們堅持了下來。當然最終,這個設計很成功,主要體現(xiàn)在,這一整個系統(tǒng),幾乎沒有課本以外的參考書,程序由我們自己獨立完成,制作的交通燈控制系統(tǒng)程序簡單易讀
45、,結(jié)構(gòu)清楚,最重要的是成本低。在設計一個系統(tǒng),除了達到所要求的性能指標以外,成本也是很重要的一個指標。成本的高低也決定了產(chǎn)品的適用性。 </p><p> 在這次單片機課程設計中,我主要負責軟件編寫和仿真的調(diào)試,在這次課程設計中,讓我懂得了團隊協(xié)作重要,在一個工程中一個團隊精神是必不可少,在這里我要感謝老師對我們指導和我們團隊的
46、另外三個同學幫助。</p><p><b> 參考文獻</b></p><p> [1] 張毅剛.新編MSC-51單片機應用設計.哈爾濱:哈爾濱工業(yè)大學出版社,2003</p><p> [2] 李廣弟.單片機基礎.北京:北京航空航天大學出版社,1992[3] 何立民.MCS—51單片機應用系統(tǒng)設計.北京:北京航空航天大學出版社,199
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通燈單片機課程設計--基于單片機的交通燈顯示系統(tǒng)
- 交通燈單片機課程設計--基于單片機的交通燈顯示系統(tǒng)
- 單片機交通燈課程設計--基于單片機的交通燈系統(tǒng)的設計
- 單片機交通燈課程設計--基于單片機的交通燈系統(tǒng)的設計
- 單片機控制交通燈課程設計
- 單片機交通燈課程設計
- 單片機課程設計---交通燈
- 單片機交通燈課程設計
- 單片機課程設計-交通燈
- 單片機課程設計--交通燈
- 單片機課程設計(交通燈)
- 單片機控制交通燈課程設計
- 單片機控制交通燈課程設計
- 單片機交通燈課程設計
- 單片機交通燈課程設計
- 單片機交通燈課程設計
- 單片機課程設計---交通燈控制
- 單片機課程設計--基于單片機的交通燈設計
- 單片機交通燈課程設計
- 單片機交通燈的控制課程設計
評論
0/150
提交評論