?? jijiuche.txt
字號:
CSEG AT 0000H
LJMP START
CSEG AT 4003H
LJMP JJ
CSEG AT 400BH
LJMP TIME
CSEG AT 401BH
LJMP COUNT
CSEG AT 4100H
START: MOV SP,#60H
SETB IT0
SETB EA
SETB EX0
SETB ET0
SETB ET1
MOV DPTR,#0CFA3H
MOV A,#80H ;INITIAL 8255
MOVX @DPTR,A
NOP
MOV TMOD,#61H ;intial time count
MOV TH0,#3CH ;0.1s
MOV TL0,#0B0H
MOV TH1,#9CH ;100 times
MOV TL1,#9CH
MOV R2,#00H
STA0 : MOV DPTR,#0CFA0H
MOV A,#03H;
MOVX @DPTR,A
MOV R6,A ;SAVE THE STAUS OF NOW
SETB TR0 ;BEGIN TIME
SETB TR1 ;BEGIN COUNT
WAIT: SJMP WAIT
JJ: PUSH PSW
PUSH ACC
PUSH 06H
PUSH TH0 ;SAVE INTERUPT TIME
PUSH TL0
PUSH TH1 ;SAVE INTERUPT TIMES
PUSH TL1
CLR TR0
CLR TR1
SETB EA
NOP
MOV A,#0C3H; ALL RED
MOVX @DPTR,A
LCALL DELAY2 POP TL1
POP TH1
POP TL0
POP TH0
POP 06H
MOV A,R6
MOVX @DPTR,A
POP ACC
SETB TR0
SETB TR1
POP PSW
RETI
TIME: PUSH PSW
PUSH ACC
PUSH 02H
CLR TR0
MOV TH0,#3CH
MOV TL0,#0B0H
CPL P1.1
SETB TR0
POP 02H
POP ACC
POP PSW
RETI
COUNT: PUSH PSW
PUSH ACC
PUSH DPH
PUSH DPL
MOV TH1,#9CH ;RESET 100 times
MOV TL1,#9CH
MOV A,R2
MOV DPTR,#STAUS
JMP @A+DPTR
STAUS: AJMP S1
AJMP S2
AJMP S3
AJMP S4
S1: ADD A,#02H
MOV R2,A
MOV DPTR,#0CFA0H
MOV A,#12H
MOVX @DPTR,A
MOV R6,A ;SAVE
LJMP OUT
S2: ADD A,#02H
MOV R2,A
MOV DPTR,#0CFA0H
MOV R7,#05H ;LIGHT 5 TIMES
LOOP0: MOV A,#06H
MOVX @DPTR,A
LCALL DELAY1
MOV A,#02H
MOVX @DPTR,A
LCALL DELAY1
DJNZ R7,LOOP0
MOV TH1,#0FFH ;RESET times
MOV TL1,#0FFH
LJMP OUT
S3: ADD A,#02H
MOV R2,A
MOV DPTR,#0CFA0H
MOV A,#21H
MOVX @DPTR,A
MOV R6,A
LJMP OUT
S4: NOP
MOV DPTR,#0CFA0H
MOV R7,#05H
LOOP1: MOV A,#09H
MOVX @DPTR,A
LCALL DELAY1
MOV A,#01H
MOVX @DPTR,A
LCALL DELAY1
DJNZ R7,LOOP1
MOV TH1,#0FFH
MOV TL1,#0FFH
MOV R2,#00H ;QING 0
LJMP OUT
OUT: POP DPL
POP DPH
POP ACC
POP PSW
RETI
DELAY1: MOV R5,#05H ;DELAY 0.5S
LOP2: MOV R4,#200
LOP1: MOV R3,#126
LOP0: DJNZ R3,LOP0
DJNZ R4,LOP1
DJNZ R5,LOP2
RET
DELAY2: MOV R5,#100 ;DELAY 10S
LOPP2: MOV R4,#200
LOPP1: MOV R3,#126
LOPP0: DJNZ R3,LOPP0
DJNZ R4,LOPP1
DJNZ R5,LOPP2
RET
END
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -