51單片機(jī)交通燈程序設(shè)計(jì)
;------闖紅燈報(bào)警程序------
B0: MOV R2,#03H ;報(bào)警持續(xù)時(shí)間3秒
B01: MOV A,R3
JZ N1 ;若倒計(jì)時(shí)完畢,不再報(bào)警
CLR P3.0 ;報(bào)警
CJNE R2,#00H,B01 ;判斷3秒是否結(jié)束
SJMP N02
;------1秒延時(shí)子程序-------
N7: RETI
T0_INT:MOV TL0,#9AH ;給定時(shí)器T0送定時(shí)10ms的初值
MOV TH0,#0F1H
INC R4
INC R5
CJNE R5,#0FAH,T01 ;判斷延時(shí)是否夠一秒,不夠則調(diào)用顯示子程序
MOV R5,#00H ;R5清零
DEC R3 ;倒計(jì)時(shí)初值減一
DEC R2 ;報(bào)警初值減一
T01: ACALL DISP ;調(diào)用顯示子程序
RETI ;中斷返回
;------顯示子程序------
DISP: JNB P2.4,T02
DISP1: MOV B,#0AH
MOV A,R3 ;R3中值二轉(zhuǎn)十顯示轉(zhuǎn)換
DIV AB
MOV 79H,A
MOV 7AH,B
DIS: MOV A,79H ;顯示十位
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV DPTR,#0002H
MOVX @DPTR,A
MOV DPTR,#0001H
MOV A,#0F7H
MOVX @DPTR,A
LCALL DELAY
DS2: MOV A,7AH ;顯示個(gè)位
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV DPTR,#0002H
MOVX @DPTR,A
MOV DPTR,#0001H
MOV A,#0FBH
MOVX @DPTR,A
RET
;------東西方向車(chē)流量檢測(cè)程序------
T03: MOV A,R3
SUBB A,#00H ;若綠燈倒計(jì)時(shí)完畢,不再檢測(cè)車(chē)流量
JZ N3
JB P2.0,T03
INC R7
CJNE R7,#64H,E1
MOV R7,#00H ;中斷到100次則清零
E1: SJMP N22
;------東西方向車(chē)流量顯示程序------
T02: MOV B,#0AH
MOV A,R7 ;R7中值二轉(zhuǎn)十顯示轉(zhuǎn)換
DIV AB
MOV 79H,A
MOV 7AH,B
DIS3: MOV A,79H ;顯示十位
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV DPTR,#0002H
MOVX @DPTR,A
MOV DPTR,#0001H
MOV A,#0F7H
MOVX @DPTR,A
LCALL DELAY
DS4: MOV A,7AH ;顯示個(gè)位
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV DPTR,#0002H
MOVX @DPTR,A
MOV DPTR,#0001H
MOV A,#0FBH
MOVX @DPTR,A
LJMP N7
;------延時(shí)4MS子程序----------
DELAY: MOV R1,#0AH
LOOP: MOV R6,#64H
NOP
LOOP1: DJNZ R6,LOOP1
DJNZ R1,LOOP
RET
;------字符表------
TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
END
51單片機(jī)相關(guān)文章:51單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
評(píng)論