百度知道 - 信息提示
利用mcs51单片机p1口控制8只发光二极管循环点亮,采用定时器t0,使之工作在方式1中断实现2秒时间间隔编程/
中断方式:
ORG 0000H
JMP MAIN
ORG 000BH
JMP T0_INT
MAIN:
MOV TMOD, #01H
MOV TH0, #HIGH(65536-62500)
MOV TL0, #LOW (65536-62500)
SETB TR0
MOV A, #7FH
MOV P0, A
M_LOOP:
SJMP M_LOOP
;--------------------------------
T0_INT:
MOV TH0, #HIGH(65536-62500)
MOV TL0, #LOW (65536-62500)
DJNZ R7, T0_END
MOV R7, #32
RR A
MOV P0, A
T0_END:
RETI
;--------------------------------
END
;==========================
查询方式,最简单:
ORG 0000H
MOV TMOD, #01H
SETB TR0
MOV A, #7FH
M_LOOP:
MOV P0, A
MOV R7, #32
WAIT:
MOV TH0, #HIGH(65536-62500)
MOV TL0, #LOW (65536-62500)
JNB TF0, $
CLR TF0
DJNZ R7, WAIT
RR A
SJMP M_LOOP
END
用80C51单片机的P1端口作输出,经驱动电路接8只发光二极管,如图,输出位是“1”时,发光二极管点亮,输出
LP:MOV P1,#81H ;点亮第1第8灯
LCALL DELAY
MOV P1,#42H ;点亮第2第7灯
LCALL DELAY
MOV P1,#24H ;点亮第3第6灯
LCALL DELAY
MOV P1,#18H ;点亮第4第5灯
LCALL DELAY
MOV P1,#24H ;点亮第3第6灯
LCALL DELAY
MOV P1,#42H ;点亮第2第7灯
LCALL DELAY
SJMP LP
可见执行结果是:LED由外向内,再由内向外点亮