標題: 基于51單片機的交通燈論文+匯編程序代碼 [打印本頁]
作者: 成天翔 時間: 2017-5-16 18:25
標題: 基于51單片機的交通燈論文+匯編程序代碼
0.png (45.24 KB, 下載次數(shù): 84)
下載附件
2017-5-16 18:38 上傳
目錄
1前言 5
1.1該課程選題背景 5
1.2該課程選題現(xiàn)實意義 5
1.3單片機交通燈研究任務(wù) 5
2設(shè)計方案 6
2.1方案設(shè)計目的 6
2.2方案設(shè)計思路 6
2.3方案設(shè)計原理 7
3系統(tǒng)硬件設(shè)計 8
3.1 AT89C51芯片簡介 8
3.2 74LS47芯片簡介 11
3.3系統(tǒng)總框圖 12
3.4、交通燈硬件線路 12
3.5、系統(tǒng)工作原理 12
4.軟件設(shè)計 13
4.1每秒鐘的設(shè)定 13
4.2秒的方法 13
4.3相應(yīng)程序代碼 13
4.4、鍵盤顯示流程圖 14
4.5、 軟件延時 14
5 Proteus軟件仿真 15
5.1正常運行時狀態(tài) 15
5.2黃燈亮?xí)r狀態(tài) 16
5.3應(yīng)急情況下狀態(tài) 16
6 設(shè)計心得體會 17
附錄1:源程序代碼 18
附錄2:硬件連接圖 23
參考文獻 23
2.2設(shè)計思路
東西、南北兩干道交于一個十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為東西、南北兩干道的公共停車時間。設(shè)東西道比南北道的車流量大,指示燈燃亮的方案如表1:
表1
表1說明:(1)當(dāng)東西道為綠燈,此道車輛通過,行人禁止通行。時間為60秒;南北方向為紅燈,此道車輛禁止通行,南北道行人可通過。
(2)當(dāng)東西方向為黃燈閃爍3秒,警示車輛和行人紅、綠燈的狀態(tài)即將切換;南北方向為紅燈,此道車輛禁止通行,南北道行人可通過。
(3)當(dāng)東西方向為紅燈,此道車輛禁止通行,東西道行人可通過;當(dāng)南北方向為紅燈,此道車輛禁止通行,南北道行人可通過。
(4)當(dāng)東西方向為紅燈,此道車輛禁止通行,東西道行人可通過;東西道為綠燈,此道車輛通過,行人禁止通行。時間為35秒。
(5)當(dāng)東西方向為紅燈,此道車輛禁止通行,東西道行人可通過;南北方向為黃燈閃爍3秒,警示車輛和行人紅、綠燈的狀態(tài)即將切換。
(6)此表可根據(jù)車流量動態(tài)設(shè)定紅綠燈初始值。
2、對于交通信號燈來說,應(yīng)該有東西南北共四組燈,但由于同一道上的兩組的信號燈的顯示情況是相同的,所以只要用兩組就行了,因此,采用單片機內(nèi)部的I/O口上的P1口中的6個引腳即可來控制6個信號燈。
3、通過編寫程序,實現(xiàn)對發(fā)光二極管的控制,來模擬交通信號燈的管理。每延時一段時間,燈的顯示情況都會按交通燈的顯示規(guī)律進行狀態(tài)轉(zhuǎn)換。
4、通過延時時間送顯,可以在原有的交通信號燈系統(tǒng)的基礎(chǔ)上,增添其倒計時間的顯示功能,實現(xiàn)其功能的擴展。
5、通過脈沖中斷編寫中斷程序,可實現(xiàn)中斷。
這是具體的匯編編程程序
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP ZHD1
ORG 000BH
LJMP ZHD2
ORG 0013H
LJMP ZHD3
ORG 1000H
MAIN:MOV TMOD,#01H
MOV TL0,#0F0H
MOV TH0,#0D8H
SETB EA
SETB ET0
SETB TR0
SETB EX0
SETB EX1 1
SETB IT0
CLR IT1
SETB PT0
CYCLE:MOV R0,#60
MOV R1,#65
MOV R2,#25
LOOP1:SETB P3.4
MOV P1,#01H
SETB P1.7
SETB P1.4
LCALL DISPLAY
DJNZ R2,LOOP1
MOV R2,#25
DEC R1
DJNZ R0,LOOP1
MOV R0,#3
LOOP2:MOV P1,#01H
SETB P1.7
SETB P1.3
LLJ: LCALL DISPLAY
CPL P1.3
DJNZ R2,LLJ
DEC R1
MOV R2,#25
DJNZ R0,LOOP2
MOV R0,#40
LOOP3:MOV P1,#01H
SETB P1.7
SETB P1.2
LCALL DISPLAY
DJNZ R2,LOOP3
MOV R2,#25
DEC R0
DJNZ R1,LOOP3
MOV R1,#35;
LOOP4:MOV P1,#01H
SETB P1.5
SETB P1.2
LCALL DISPLAY
DJNZ R2,LOOP4
MOV R2,#25
DEC R0
DJNZ R1,LOOP4
MOV R1,#3
LOOP5:MOV P1,#01H
SETB P1.6
SETB P1.2
LLJ1: LCALL DISPLAY
CPL P1.6
DJNZ R2,LLJ1
MOV R2,#25
DEC R0
DJNZ R1,LOOP5
LJMP CYCLE
ZHD1: LCALL DISPLAY
JB P3.6,Q2
INC R1
INC R0
CJNE R1,#99,TIAO2
MOV R1,#00H
TIAO2:CJNE R0,#99,TIAO3
MOV R0,#00H
TIAO3:LCALL DISPLAY
LCALL DISPLAY
LCALL DISPLAY
LCALL DISPLAY
LCALL DISPLAY
LCALL DISPLAY
JNB P1.0,Z2
Q2: JB P3.7,WAIT1
DEC R1
DEC R0
CJNE R1,#00H,TIAO
MOV R1,#99
TIAO: CJNE R0,#00H,TIAO1
MOV R0,#99
TIAO1:LCALL DISPLAY
LCALL DISPLAY
LCALL DISPLAY
LCALL DISPLAY
LCALL DISPLAY
LCALL DISPLAY
WAIT1:JNB P1.0,Z2
WAIT: LJMP ZHD1
Z2: RETI
ZHD2: MOV TL0,#0F0H
MOV TH0,#0D8H
CLR P3.4
RETI
ZHD3:MOV P1,#85H
MOV P0,#30H
MOV P2,#30H
JNB P3.3,ZHD3
RETI
DISPLAY:MOV A,R0
MOV B,#10
DIV AB
ADD A,#10H
MOV P0,A
TI0: JNB P3.4,TT
SJMP TI0
TT: SETB P3.4
MOV A,B
ADD A,#20H
MOV P0,A
TI1: JNB P3.4,TT1
SJMP TI1
TT1: SETB P3.4
MOV A,R1
MOV B,#10
DIV AB
ADD A,#10H
MOV P2,A
TI2: JNB P3.4,TT2
SJMP TI2
TT2: SETB P3.4
MOV A,B
ADD A,#20H
…………限于本文篇幅 余下代碼請從51黑下載附件…………
完整論文下載(word格式 可編輯):
基于51單片機匯編語言設(shè)計的交通燈.doc
(339.27 KB, 下載次數(shù): 156)
2017-5-16 18:21 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者: hxylhw99 時間: 2018-12-5 19:50
執(zhí)行著執(zhí)行著突然停了是怎么回事呀
作者: 答案先生 時間: 2020-6-20 09:28
這個有PROTEUS仿真文件嗎?
歡迎光臨 (http://www.torrancerestoration.com/bbs/) |
Powered by Discuz! X3.1 |