版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 交通信號(hào)燈實(shí)時(shí)控制系統(tǒng)設(shè)計(jì)</p><p><b> 一、設(shè)計(jì)目的</b></p><p> 1.學(xué)習(xí)單片機(jī)基本電路的設(shè)計(jì),加深對(duì)單片機(jī)理論知識(shí)的理解</p><p> 2.掌握單片機(jī)內(nèi)部各功能模塊的功能與應(yīng)用,學(xué)會(huì)單片機(jī)基本外設(shè)電路的設(shè)計(jì)</p><p> 3、學(xué)習(xí)單片機(jī)匯編語(yǔ)言及程序設(shè)計(jì)
2、方法,掌握單片機(jī)匯編語(yǔ)言的程序設(shè)計(jì)</p><p> 4.掌握單片機(jī)應(yīng)用系統(tǒng)的軟件和硬件設(shè)計(jì)過(guò)程、調(diào)試方法及功能實(shí)現(xiàn)</p><p><b> 二、設(shè)計(jì)要求</b></p><p> 1、根據(jù)實(shí)際交通狀況,分別控制紅、綠、黃燈的燃亮與熄滅情況</p><p> 2、各信號(hào)燈的燃亮?xí)r間為:綠燈:60秒,紅燈:80秒
3、,黃燈:5秒</p><p> 3、紅燈倒計(jì)時(shí)時(shí)間,當(dāng)有車(chē)輛闖紅燈時(shí),啟動(dòng)蜂鳴器進(jìn)行報(bào)警,3S 后然后恢復(fù)正常。</p><p> 4、綠燈倒計(jì)時(shí)時(shí),檢測(cè)車(chē)流量</p><p><b> 三、 硬件電路設(shè)計(jì)</b></p><p><b> 1.芯片選用</b></p><
4、;p> 選用設(shè)備8051 單片機(jī)一片,8255 并行通用接口芯片一片,74LS07 兩片,MAX692‘看門(mén)狗’一片,共陰極的七段數(shù)碼管兩個(gè)雙向晶閘管若干,7805 三端穩(wěn)壓電源一個(gè),紅、黃、綠交通燈各兩個(gè),開(kāi)關(guān)鍵盤(pán)、連線若干。</p><p> 8051 是MCS-51 系列單片機(jī)的典型產(chǎn)品,8051 單片機(jī)包含中央處理器、程序存儲(chǔ)器(ROM)、數(shù)據(jù)存儲(chǔ)器(RAM)、定時(shí)/計(jì)數(shù)器、并行接口、串行接口和
5、中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線。</p><p><b> 8051引腳圖</b></p><p> 8255 可編程并行接口芯片有三個(gè)輸入輸出端口,即A口、B 口和C 口,對(duì)應(yīng)于引腳PA7~PA0、PB7~PB0 和PC7~PC0。其內(nèi)部還有一個(gè)控制寄存器,即控制口。通常A 口、B 口作為輸入輸出的數(shù)據(jù)端口。C 口作為控制或狀態(tài)信息的
6、端口,它在方式字的控制下,可以分成4 位的端口,每個(gè)端口包含一個(gè)4 位鎖存器。它們分別與端口A/B配合使用,可以用作控制信號(hào)輸出或作為狀態(tài)信號(hào)輸入。</p><p><b> 8255引腳圖</b></p><p> 74LS373 是一種帶三態(tài)門(mén)的8D 鎖存器,其管腳示意圖如圖1:其中:1D-8D 為8 個(gè)輸入端。1Q-8Q 為8 個(gè)輸出端。LE 為數(shù)據(jù)打入端:
7、當(dāng)LE 為“1”時(shí),鎖存器輸出狀態(tài)同輸入狀態(tài);當(dāng)LE 由“1”變“0”時(shí),數(shù)據(jù)打入鎖存器OE 為輸出允許端:當(dāng)OE=0 時(shí),三態(tài)門(mén)打開(kāi);當(dāng)OE=1 時(shí),三態(tài)門(mén)關(guān)閉,輸出高阻。</p><p> 74LS373 芯片管腳圖</p><p><b> 2.系統(tǒng)工作原理</b></p><p> ?。?)開(kāi)關(guān)鍵盤(pán)輸入交通燈初始時(shí)間,通過(guò) 8051
8、 單片機(jī) P1 輸入到系統(tǒng)</p><p> ?。?)由 8051 單片機(jī)的定時(shí)器每秒鐘通過(guò) P0 口向 8255 的數(shù)據(jù)口送信息,由 8255 的 PA口顯示紅、綠、黃燈的燃亮情況;由 8255 的 PC 口顯示每個(gè)燈的燃亮?xí)r間。</p><p> ?。?)8051 設(shè)置各個(gè)信號(hào)燈的燃亮?xí)r間,通過(guò) 8051 設(shè)置,綠、紅時(shí)間分別為 60 秒、80 秒循環(huán),由 8051 的 P0 口向 8
9、255 的數(shù)據(jù)口輸出。</p><p> (4)通過(guò) 8051 單片機(jī)的 P3.0 位來(lái)控制系統(tǒng)是工作或設(shè)置初值,當(dāng)為 0 就對(duì)系統(tǒng)進(jìn)行初始化,為 1 系統(tǒng)就開(kāi)始工作。</p><p> ?。?)紅燈倒計(jì)時(shí)時(shí)間,當(dāng)有車(chē)輛闖紅燈時(shí),啟動(dòng)蜂鳴器進(jìn)行報(bào)警,3S 后然后恢復(fù)正常。</p><p> ?。?)增加每次綠燈時(shí)間車(chē)流量檢測(cè)的功能,并且通過(guò)查詢(xún)P2.0 端口的電平
10、是否為低,開(kāi)關(guān)按下為低電平,雙位數(shù)碼管顯示車(chē)流量,直到下一次綠燈時(shí)間重新記入。</p><p> ?。?)綠燈時(shí)間倒計(jì)時(shí)完畢,重新循環(huán)。</p><p><b> 三、 軟件設(shè)計(jì)</b></p><p><b> 1.秒脈沖的產(chǎn)生</b></p><p> 延時(shí)方法可以有兩種一中是利用MCS
11、-51 內(nèi)部定時(shí)器才生溢出中斷來(lái)確定1 秒的時(shí)間,另一種是采用軟件延時(shí)的方法。</p><p><b> 2.計(jì)數(shù)器硬件延時(shí)</b></p><p> 2.1 設(shè)置計(jì)數(shù)器初值</p><p> 定時(shí)器工作時(shí)必須給計(jì)數(shù)器送計(jì)數(shù)器初值,這個(gè)值是送到TH 和TL 中的。他是以加法記數(shù)的,并能從全1 到全0 時(shí)自動(dòng)產(chǎn)生溢出中斷請(qǐng)求。因此,我們可以
12、把計(jì)數(shù)器記滿(mǎn)為零所需的計(jì)數(shù)值設(shè)定為C 和計(jì)數(shù)初值設(shè)定為T(mén)C 可得到如下計(jì)算通式:</p><p><b> TC=M-C</b></p><p> 式中,M 為計(jì)數(shù)器摸值,該值和計(jì)數(shù)器工作方式有關(guān)。在方式0 時(shí)M 為213 ;在方式1 時(shí)M 的值為216;在方式2 和3 為28</p><p><b> 2.2 計(jì)算公式<
13、/b></p><p> T=(M-TC)T 計(jì)數(shù)或 TC=M-T/T 計(jì)數(shù)</p><p> T 計(jì)數(shù)是單片機(jī)時(shí)鐘周期TCLK的12 倍;TC 為定時(shí)初值;如單片機(jī)的主脈沖頻率為TCLK12MHZ,經(jīng)過(guò)12 分頻:</p><p> 方式0:TMAX=213 *1微秒=8.192 毫秒</p><p> 方式1:TMAX=21
14、6 *1微秒=65.536 毫秒</p><p> 顯然1秒鐘已經(jīng)超過(guò)了計(jì)數(shù)器的最大定時(shí)間,所以我們只有采用定時(shí)器和軟件相結(jié)合的辦法才能解決這個(gè)問(wèn)題。</p><p><b> 2.3 秒計(jì)時(shí)</b></p><p> 我們采用在主程序中設(shè)定一個(gè)初值為20 的軟件計(jì)數(shù)器和使T0 定時(shí)50 毫秒.這樣每當(dāng)T0 到50 毫秒時(shí)CPU 就響應(yīng)它
15、的溢出中斷請(qǐng)求,進(jìn)入他的中斷服務(wù)子程序。在中斷服務(wù)子程序中,CPU 先使軟件計(jì)數(shù)器減1,然后判斷它是否為零。為零表示1秒已到可以返回到輸出時(shí)間顯示程序。</p><p> 2.4 相應(yīng)程序代碼</p><p><b> (1)主程序</b></p><p> 定時(shí)器需定時(shí)50 毫秒,故T0 工作于方式1。 初值:</p>
16、<p> TC=M-T/ T 計(jì)數(shù) =216-50ms/1us=15536=3CB0H</p><p><b> ORG 1000H</b></p><p> START: MOV TMOD, #01H ;令T0 為定時(shí)器方式1</p><p> MOV TH0, #3CH ;裝入定時(shí)器初值</p&
17、gt;<p> MOV TL0, #B0H</p><p> MOV IE, #82H ;開(kāi)T0 中斷</p><p> SEBT TR0 ;啟動(dòng)T0 計(jì)數(shù)器</p><p> MOV R0, #14H ;軟件計(jì)數(shù)器賦初值</p><p> LOOP: SJMP
18、$ ;等待中斷</p><p> (2)中斷服務(wù)子程序</p><p><b> ORG 000BH</b></p><p><b> AJMP BRT0</b></p><p><b> ORG 00BH</b></p>&
19、lt;p> BRT0:DJNZ R0,NEXT</p><p> AJMP TIME ; 跳轉(zhuǎn)到時(shí)間及信號(hào)燈顯示子程序</p><p> DJNZ:MOV R0,#14H ;恢復(fù)R0 值</p><p> MOV TH0, #3CH ;重裝入定時(shí)器初值</p><p> MOV TL0, #B0H
20、</p><p> MOV IE, #82H</p><p><b> 3. 軟件延時(shí)</b></p><p> MCS-51 的工作頻率為2-12MHZ,我們選用的8051 單片機(jī)的工作頻率為6MHZ。機(jī)器周期與主頻有關(guān),機(jī)器周期是主頻的12 倍,所以一個(gè)機(jī)器周期的時(shí)間為12*(1/6M)=2us。我們可以知道具體每條指令的周期數(shù),這樣
21、我們就可以通過(guò)指令的執(zhí)行條數(shù)來(lái)確定1 秒的時(shí)間。</p><p> 具體的延時(shí)程序分析:</p><p> DELAY : MOV R4 , #08H ;延時(shí)1 秒子程序</p><p> DE2 : LCALL DELAY1</p><p> DJNZ R4 , DE2</p><p&g
22、t;<b> RET</b></p><p> DELAY1 : MOV R6 , #0 ;延時(shí)125ms 子程序</p><p> MOV R5 , #0</p><p> DE1 : DJNZ R5 , $</p><p> DJNZ R6 , DE1</p>&
23、lt;p><b> RET</b></p><p> DELAY1 為一個(gè)雙重循環(huán),循環(huán)次數(shù)為256*256=65536,所以延時(shí)時(shí)間為65536*2=131072us,約為 125ms。DELAY 中R4 設(shè)置的初值為8,主延時(shí)程序循環(huán)8 次,所以125ms*8=1 秒。由于單片機(jī)的運(yùn)行速度很快其他的指令執(zhí)行時(shí)間可以忽略不計(jì)。</p><p> 4. 時(shí)
24、間及信號(hào)燈的顯示</p><p> 4.1 8051 并行口的擴(kuò)展</p><p> 8051 雖然有4 個(gè)8 位I/O 端口,但真正能提供借用的只有P1 口,因?yàn)镻2 和P0 口通常用于傳送外部傳送地址和數(shù)據(jù),P3 口也有它的第二功能。因此,8051 通常需要擴(kuò)展。由于我們用外部輸入設(shè)定紅綠燈倒計(jì)時(shí)初值、數(shù)碼管的輸出顯示、紅綠黃信號(hào)燈的顯示都要用到一個(gè)I/O 端口,顯然8051 的
25、端口是不夠,需要擴(kuò)展。擴(kuò)展的方法有兩種:(1)借用外部RAM 地址來(lái)擴(kuò)展I/O 端口;(2)采用I/O 接口新片來(lái)擴(kuò)充。我們用8255 并行接口信片來(lái)擴(kuò)展I/O 端口。</p><p><b> 4.2 顯示原理</b></p><p> 當(dāng)定時(shí)器定時(shí)為1 秒,時(shí)程序跳轉(zhuǎn)到時(shí)間顯示及信號(hào)燈顯示子程序,它將依次顯示信號(hào)燈時(shí)間,同時(shí)一直顯示信號(hào)燈的顏色,這時(shí)在返回定時(shí)
26、子程序定時(shí)一秒,在顯示黃燈的下一個(gè)時(shí)間,這樣依次把所有的燈色的時(shí)間顯示完后在重新給時(shí)間計(jì)數(shù)器賦初值,重新進(jìn)入循環(huán)。</p><p> 4.3 8255 PA 口輸出信號(hào)接信號(hào)燈</p><p> 由于發(fā)光二極管為共陽(yáng)極接法,輸出端口為低電平,對(duì)應(yīng)的二極管發(fā)光,所以可以用置位方法點(diǎn)亮紅,綠,黃發(fā)光二極管。</p><p> 4.4 8255 輸出信號(hào)與數(shù)碼管
27、的連接</p><p> LED 燈的顯示原理:通過(guò)同名管腳上所加電平的高低來(lái)控制發(fā)光二極管是否點(diǎn)量而顯示不同的字形如 SP,g,f,e,d,c,b,a 管角上加上7FH 所以SP 上為0伏,不亮其余為T(mén)TL 高電平,全亮則顯示為8。</p><p> 4.5 8255 與8051 的連接</p><p> 用 8051 的P0 口的P0.7 連接8255
28、的片選信號(hào)cs 我們用8031 的地址采用全譯碼方式,當(dāng)p0.7 =0 時(shí)片選有效,其他無(wú)效,P0.7 用于選擇8255 端口。</p><p> P0.7 p0.6 p0.5 p0.4 p0.3 p0.2 P0.1 P0.0</p><p> A7 A6 A5 A4 A3 A2 A1 A0</p><p> 1
29、 X X X X X 0 0 00H為8255的PA口</p><p> 1 X X X X X 0 1 01H為8255的PB口</p><p> 1 X X X X X 1 0 02H為8255的PC口</p><p&g
30、t; 1 X X X X X 1 1 03H為8255的控制口</p><p> 由于 8051 是分時(shí)對(duì)8255 和儲(chǔ)存器進(jìn)行訪問(wèn)所以8051 的P0 口不會(huì)發(fā)生沖突。</p><p><b> 5. 程序設(shè)計(jì)</b></p><p><b> 圖3 程序流程圖</b&
31、gt;</p><p><b> 程序源代碼</b></p><p> ORG 0000H ;主程序的入口地址</p><p> LJMP MAIN ;跳轉(zhuǎn)到主程序的開(kāi)始處</p><p> ORG 0003H ;外部中斷0的中斷程序入口地址 &l
32、t;/p><p> ORG 000BH ;定時(shí)器0的中斷程序入口地址</p><p> LJMP T0_INT ;跳轉(zhuǎn)到中斷服務(wù)程序處</p><p> ORG 0013H ;外部中斷1的中斷程序入口地址 </p><p> MAIN : MOV SP,#50H</p>
33、<p> MOV IE,#8EH ;CPU開(kāi)中斷,允許T0中斷,T1中斷和外部中斷1中斷</p><p> MOV TMOD,#51H ;設(shè)置T1為計(jì)數(shù)方式,T0為定時(shí)方式,且都工作于模式1</p><p> MOV TH1,#00H ;T1計(jì)數(shù)器清零</p><p> MOV TL1,#00H</p>
34、<p> SETB TR1 ;啟動(dòng)T1計(jì)時(shí)器</p><p> SETB EX1 ;允許INT1中斷</p><p> SETB IT1 ;選擇邊沿觸發(fā)方式</p><p> MOV DPTR ,#0003H</p><p> MOV A, #80H ;給8
35、255賦初值,8255工作于方式0</p><p> MOVX @DPTR, A</p><p> AGAIN: JB P3.1,N0 ;判斷是否要設(shè)定東西方向紅綠燈時(shí)間的初值,若P3.1為1 則跳轉(zhuǎn)</p><p> MOV A,P1 </p><p> JB P1.7,RED ;判斷P1.7是否為1,
36、若為1則設(shè)定紅燈時(shí)間,否則設(shè)定綠燈時(shí)間 </p><p> MOV R0,#00H ;R0清零</p><p> MOV R0,A ;存入東西方向綠燈初始時(shí)間</p><p><b> MOV R3,A</b></p><p> LCALL DISP1</p><
37、;p> LCALL DELAY</p><p> AJMP AGAIN</p><p> RED: MOV A,P1</p><p> ANL A,#7FH ;P1.7置0</p><p> MOV R7,#00H ;R7清零</p><p> MOV R7,A ;
38、存入東西方向紅燈初始時(shí)間</p><p><b> MOV R3,A</b></p><p> LCALL DISP1</p><p> LCALL DELAY</p><p> AJMP AGAIN</p><p> ;---------------------------------
39、----------</p><p> N0: SETB TR0 ;啟動(dòng)T0計(jì)時(shí)器</p><p> MOV 76H,R7 ;紅燈時(shí)間存入76H</p><p> N00: MOV A,76H ;東西方向禁止,南北方向通行</p><p> MOV R3,A <
40、/p><p> MOV DPTR,#0000H ;置8255A口,東西方向紅燈亮,南北方向綠燈亮</p><p> MOV A,#0DDH</p><p> MOVX @DPTR, A</p><p> N01: JB P2.0,B0</p><p> N02: SETB P3.0</p>
41、<p> CJNE R3,#00H,N01 ;比較R3中的值是否為0,不為0轉(zhuǎn)到當(dāng)前指令處執(zhí)行</p><p> ;------黃燈閃爍5秒程序------</p><p> N1: SETB P3.0</p><p> MOV R3,#05H</p><p> MOV DPTR,#0000H ;置8255A口
42、,東西,南北方向黃燈亮</p><p> MOV A,#0D4H</p><p> MOVX @DPTR,A</p><p> N11: MOV R4,#00H</p><p> N12: CJNE R4,#7DH,$ ;黃燈持續(xù)亮0.5秒</p><p> N13: MOV DPTR,#0
43、000H ; 置8255A口,南北方向黃燈滅</p><p> MOV A,#0DDH</p><p> MOVX @DPTR,A</p><p> N14: MOV R4,#00H</p><p> CJNE R4,#7DH,$ ;黃燈持續(xù)滅0.5秒</p><p> CJNE R3,#00H
44、,N1 ;閃爍時(shí)間達(dá)5秒則退出</p><p> ;------------------------------------------------------------</p><p> N2: MOV R7,#00H</p><p> MOV A,R0 ;東西通行,南北禁止</p><p><b> MO
45、V R3,A</b></p><p> MOV DPTR,#0000H ; 置8255A口,東西方向綠燈亮,南北方向紅燈亮</p><p> MOV A,#0EBH</p><p> MOVX @DPTR,A</p><p> N21: JB P2.0,T03</p><p> N22:
46、CJNE R3,#00H,N21</p><p> ;------黃燈閃爍5秒程序------</p><p> N3: MOV R3,#05H</p><p> MOV DPTR,#0000H ;置8255A口,東西,南北方向黃燈亮</p><p> MOV A,#0E2H</p><p> M
47、OVX @DPTR,A</p><p> N31: MOV R4,#00H</p><p> CJNE R4,#7DH,$ ;黃燈持續(xù)亮0.5秒</p><p> N32: MOV DPTR,#0000H ; 置8255A口,南北方向黃燈滅</p><p> MOV A,#0EBH</p><p&
48、gt; MOVX @DPTR,A</p><p> N33: MOV R4,#00H</p><p> CJNE R4,#7DH,$ ;黃燈持續(xù)滅0.5秒</p><p> CJNE R3,#00H,N3 ;閃爍時(shí)間達(dá)5秒則退出</p><p><b> SJMP N00</b></p&g
49、t;<p> ;------闖紅燈報(bào)警程序------</p><p> B0: MOV R2,#03H ;報(bào)警持續(xù)時(shí)間3秒</p><p> B01: MOV A,R3</p><p> JZ N1 ;若倒計(jì)時(shí)完畢,不再報(bào)警</p><p> CLR P3.0
50、 ;報(bào)警 </p><p> CJNE R2,#00H,B01 ;判斷3秒是否結(jié)束</p><p><b> SJMP N02</b></p><p> ;------1秒延時(shí)子程序-------</p><p> N7: RETI</p><p> T0_INT
51、:MOV TL0,#9AH ;給定時(shí)器T0送定時(shí)10ms的初值</p><p> MOV TH0,#0F1H </p><p><b> INC R4</b></p><p><b> INC R5</b></p><p> CJNE R5,#0FAH,T01 ;判斷延時(shí)是
52、否夠一秒,不夠則調(diào)用顯示子程序</p><p> MOV R5,#00H ;R5清零</p><p> DEC R3 ;倒計(jì)時(shí)初值減一</p><p> DEC R2 ;報(bào)警初值減一</p><p> T01: ACALL DISP ;調(diào)用顯示子程序&l
53、t;/p><p> RETI ;中斷返回</p><p> ;------顯示子程序------</p><p> DISP: JNB P2.4,T02</p><p> DISP1: MOV B,#0AH</p><p> MOV A,R3 ;R3中值二轉(zhuǎn)十顯
54、示轉(zhuǎn)換</p><p><b> DIV AB</b></p><p><b> MOV 79H,A</b></p><p><b> MOV 7AH,B</b></p><p> DIS: MOV A,79H ;顯示十位</p>
55、<p> MOV DPTR,#TAB</p><p> MOVC A,@A+DPTR</p><p> MOV DPTR,#0002H</p><p> MOVX @DPTR,A</p><p> MOV DPTR,#0001H</p><p> MOV A,#0F7H</p>&l
56、t;p> MOVX @DPTR,A</p><p> LCALL DELAY</p><p> DS2: MOV A,7AH ;顯示個(gè)位</p><p> MOV DPTR,#TAB </p><p> MOVC A,@A+DPTR</p><p> MOV DPTR,#00
57、02H</p><p> MOVX @DPTR,A</p><p> MOV DPTR,#0001H</p><p> MOV A,#0FBH</p><p> MOVX @DPTR,A</p><p><b> RET</b></p><p> ;------
58、東西方向車(chē)流量檢測(cè)程序------</p><p> T03: MOV A,R3</p><p> SUBB A,#00H ;若綠燈倒計(jì)時(shí)完畢,不再檢測(cè)車(chē)流量</p><p> JZ N3 </p><p> JB P2.0,T03</p><p> INC
59、 R7 </p><p> CJNE R7,#64H,E1 </p><p> MOV R7,#00H ;中斷到100次則清零</p><p> E1: SJMP N22</p><p> ;------東西方向車(chē)流量顯示程序------</p>&
60、lt;p> T02: MOV B,#0AH</p><p> MOV A,R7 ;R7中值二轉(zhuǎn)十顯示轉(zhuǎn)換</p><p><b> DIV AB</b></p><p><b> MOV 79H,A</b></p><p><b>
61、MOV 7AH,B</b></p><p> DIS3: MOV A,79H ;顯示十位</p><p> MOV DPTR,#TAB</p><p> MOVC A,@A+DPTR</p><p> MOV DPTR,#0002H</p><p> MOVX @DPTR,A
62、</p><p> MOV DPTR,#0001H</p><p> MOV A,#0F7H</p><p> MOVX @DPTR,A</p><p> LCALL DELAY</p><p> DS4: MOV A,7AH ;顯示個(gè)位</p><p> M
63、OV DPTR,#TAB </p><p> MOVC A,@A+DPTR</p><p> MOV DPTR,#0002H</p><p> MOVX @DPTR,A</p><p> MOV DPTR,#0001H</p><p> MOV A,#0FBH</p><p> MO
64、VX @DPTR,A</p><p><b> LJMP N7</b></p><p> ;------延時(shí)4MS子程序----------</p><p> DELAY: MOV R1,#0AH</p><p> LOOP: MOV R6,#64H</p><p><b>
65、; NOP</b></p><p> LOOP1: DJNZ R6,LOOP1</p><p> DJNZ R1,LOOP</p><p> RET </p><p> ;------字符表------</p><p> TAB: DB 3FH,06H,5BH,4FH,6
66、6H,6DH,7DH,07H,7FH,6FH </p><p><b> END</b></p><p><b> 程序運(yùn)行結(jié)果:</b></p><p> 五、結(jié)論 </p><p> 本系統(tǒng)充分利用了8051 和8255 芯片的I/O 引腳功能,系統(tǒng)采用MSC-51 系列單片機(jī)
67、 8051 和可編程并行I/O 接口芯片8255A 為中心器件來(lái)設(shè)計(jì)交通燈控制器,實(shí)現(xiàn)了能根據(jù)實(shí)際車(chē)流量通過(guò)8051 芯片的P1 口設(shè)置紅、綠燈燃亮?xí)r間的功能;紅綠燈循環(huán)點(diǎn)亮,倒計(jì)時(shí)剩5 秒時(shí)黃燈閃爍警示(交通燈信號(hào)通過(guò)PA口輸出,顯示時(shí)間直接通過(guò)8255的PC口輸出至雙位數(shù)碼管);車(chē)輛闖紅燈報(bào)警;綠燈時(shí)間可檢測(cè)車(chē)流量并可通過(guò)雙位數(shù)碼管顯示。系統(tǒng)不足之處不能控制車(chē)的左、右轉(zhuǎn)、以及自動(dòng)根據(jù)車(chē)流改變紅綠燈時(shí)間等。</p>&l
68、t;p><b> 六、心得體會(huì)</b></p><p> 通過(guò)對(duì)交通燈實(shí)時(shí)控制系統(tǒng)的設(shè)計(jì),我初步掌握了單片機(jī)內(nèi)部各功能模塊的功能與應(yīng)用,學(xué)會(huì)了單片機(jī)基本外設(shè)電路的設(shè)計(jì),而且對(duì)于單片機(jī)匯編語(yǔ)言及程序設(shè)計(jì)方法有了更深的理解,課程設(shè)計(jì)讓我不僅加深了對(duì)單片機(jī)理論知識(shí)的理解,將理論很好地應(yīng)用到實(shí)際當(dāng)中去,而且還學(xué)會(huì)了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,超越自己。創(chuàng)新,是要我們學(xué)會(huì)將
69、理論很好地聯(lián)系實(shí)際,并不斷地去開(kāi)動(dòng)自己的大腦,從為人類(lèi)造福的意愿出發(fā),做自己力所能及的,別人卻沒(méi)想到的事。使之不斷地戰(zhàn)勝別人,超越前人。同時(shí),更重要的是,我在這一設(shè)計(jì)過(guò)程中,學(xué)會(huì)了堅(jiān)持不懈,不輕易言棄。</p><p> 課程設(shè)計(jì)的過(guò)程就是不斷學(xué)習(xí)不斷探索的過(guò)程,其中難免會(huì)遇到困難與挫折,比如對(duì)實(shí)際生活中的交通秩序的不了解給整個(gè)設(shè)計(jì)帶來(lái)的困擾,專(zhuān)業(yè)知識(shí)的不足遇到的設(shè)計(jì)瓶頸,但我始終堅(jiān)信,方法總比困難多,于是,我
70、堅(jiān)持了下來(lái),并最終完成了本次設(shè)計(jì)任務(wù)。在課程設(shè)計(jì)的過(guò)程中,我不僅收獲了專(zhuān)業(yè)知識(shí),更學(xué)到了一種設(shè)計(jì)思路,我想這才是我的最大收獲。學(xué)無(wú)止境,在日后的學(xué)習(xí)生活中, 我會(huì)加倍努力,豐富自己的專(zhuān)業(yè)知識(shí),提升自我的專(zhuān)業(yè)技能,在自己的工作崗位上做了更大的貢獻(xiàn)!</p><p><b> 參考文獻(xiàn)</b></p><p> 1.牛昱光,等. 單片機(jī)原理與接口技術(shù). 北京:電子工業(yè)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)---交通信號(hào)燈控制系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)-控制交通信號(hào)燈
- 單片機(jī)課程設(shè)計(jì)--交通信號(hào)燈模擬控制系統(tǒng)設(shè)計(jì)
- 計(jì)控課程設(shè)計(jì)--單片機(jī)交通信號(hào)燈控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---交通信號(hào)燈模擬控制設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--模擬交通信號(hào)燈
- 單片機(jī)課程設(shè)計(jì)--模擬交通信號(hào)燈
- 單片機(jī)課程報(bào)告設(shè)計(jì)--交通信號(hào)燈模擬控制系統(tǒng)設(shè)計(jì)
- 交通信號(hào)燈課程設(shè)計(jì)---交通信號(hào)燈系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)的交通信號(hào)燈控制系統(tǒng)設(shè)計(jì)
- 交通信號(hào)燈控制系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)
- 基于單片機(jī)的交通信號(hào)燈控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)控制交通信號(hào)燈
- 交通信號(hào)燈課程設(shè)計(jì)--交通指揮信號(hào)燈控制系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)---交通信號(hào)燈控制系統(tǒng)設(shè)計(jì)
- 交通信號(hào)燈畢業(yè)設(shè)計(jì)--基于單片機(jī)的交通信號(hào)控制系統(tǒng)
- 基于51單片機(jī)的交通信號(hào)燈控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)報(bào)告--交通信號(hào)燈的模擬系統(tǒng)
- 課程設(shè)計(jì)---交通信號(hào)燈plc控制系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)--交通信號(hào)燈控制系統(tǒng)的設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論