?? jiaotong.txt
字號:
1.因?yàn)楸緦?shí)驗(yàn)是交通燈控制實(shí)驗(yàn),所以要先了解實(shí)際交通燈的變化規(guī)律。假設(shè)一個十字路口為東西南北走向。初始狀態(tài)0為東西紅燈,南北紅燈。然后轉(zhuǎn)狀態(tài)1南北綠燈通車,東西紅燈。過一段時間轉(zhuǎn)狀態(tài)2,南北綠燈閃幾次轉(zhuǎn)亮黃燈,延時幾秒,東西仍然紅燈。再轉(zhuǎn)狀態(tài)3,東西綠燈通車,南北紅燈。過一段時間轉(zhuǎn)狀態(tài)4,東西綠燈閃幾次轉(zhuǎn)亮黃燈,延時幾秒,南北仍然紅燈。最后循環(huán)至狀態(tài)1。
2.雙色LED是由一個紅色LED管芯和一個綠色LED管芯封裝在一起,公用負(fù)端。當(dāng)紅色正端加高電平,綠色正端加低電平時,紅燈亮;紅色正端加低電平,綠色正端加高電平時,綠燈亮;兩端都加高電平時,黃燈亮。油箱:chenjunlei1016@163.com
提問者: CJL寒夜飄雪 - 試用期 一級 最佳答案
系統(tǒng)晶振是 11.0592 MHz
ORG 0000H
LJMP START
ORG 0003H ;INT 0 中斷入口地址
LJMP INT0
ORG 0040H
START:
MOV SP,#60H
SETB EX0 ;INT 0 中斷有效
SETB IT0
SETB EA
LCALL STATUS0 ;初始狀態(tài)(都是紅燈)
CIRCLE: LCALL STATUS1 ;南北綠燈,東西紅燈
LCALL STATUS2 ;南北綠燈閃轉(zhuǎn)黃燈,東西紅燈
LCALL STATUS3 ;南北紅燈,東西綠燈
LCALL STATUS4 ;南北紅燈,東西綠燈閃轉(zhuǎn)黃燈
LJMP CIRCLE
INT0:
PUSH PSW ;保護(hù)現(xiàn)場
PUSH 2
PUSH ACC
MOV DPTR,#8300H
MOV A,#0FH ;南北,東西都亮紅燈
MOVX @DPTR,A
MOV R2,#100 ;延時10秒
LCALL DELAY
POP ACC ;恢復(fù)現(xiàn)場
MOVX @DPTR,A
POP 2
POP PSW
RETI
STATUS0: ;南北紅燈,東西紅燈
MOV DPTR,#8300H
MOV A,#0FH
MOVX @DPTR,A
MOV R2,#10 ;延時1秒
LCALL DELAY
RET
STATUS1: ;南北綠燈,東西紅燈
MOV DPTR,#8300H
MOV A,#96H ;南北綠燈,東西紅燈
MOVX @DPTR,A
MOV R2,#200 ;延時20秒
LCALL DELAY
RET
STATUS2: ;南北綠燈閃轉(zhuǎn)黃燈,東西紅燈
MOV DPTR,#8300H
MOV R3,#03H ;綠燈閃3次
FLASH: MOV A,#9FH
MOVX @DPTR,A
MOV R2,#03H
LCALL DELAY
MOV A,#96H
MOVX @DPTR,A
MOV R2,#03H
LCALL DELAY
DJNZ R3,FLASH
MOV A,#06H ;南北黃燈,東西紅燈
MOVX @DPTR,A
MOV R2,#10 ;延時1秒
LCALL DELAY
RET
STATUS3: ;南北紅燈,東西綠燈
MOV DPTR,#8300H
MOV A,#69H
MOVX @DPTR,A
MOV R2,#200 ;延時20秒
LCALL DELAY
RET
STATUS4: ;南北紅燈,東西綠燈閃轉(zhuǎn)黃燈
MOV DPTR,#8300H
MOV R3,#03H ;綠燈閃3次
FLASH1: MOV A,#6FH
MOVX @DPTR,A
MOV R2,#03H
LCALL DELAY
MOV A,#69H
MOVX @DPTR,A
MOV R2,#03H
LCALL DELAY
DJNZ R3,FLASH1
MOV A,#09H ;南北紅燈,東西黃燈
MOVX @DPTR,A
MOV R2,#10 ;延時1秒
LCALL DELAY
NOP
RET
DELAY: ;延時子程序
PUSH 2
PUSH 1
PUSH 0
DELAY1: MOV 1,#00H
DELAY2: MOV 0,#0B2H
DJNZ 0,$
DJNZ 1,DELAY2 ;延時 100 mS
DJNZ 2,DELAY1
POP 0
POP 1
POP 2
RET
END
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -