LED EQU P1.0
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP EXT0
ORG 0030H
MAIN:
MOV TMOD,#01H
MOV TH0,#HIGH(65536-41667)
MOV TL0,#LOW(65536-41667)
SETB ET0
SETB EA
SETB EX0
SETB IT0
CLR A
SJMP $
EXT0:
CPL TR0
RETI
T0ISR:
CLR TR0
MOV TH0,#HIGH(65536-41667)
MOV TL0,#LOW(65536-41667)
SETB TR0
INC A
CJNE A,#4,T0E
CLR A
CPL LED
T0E:
RETI
END
循环点亮枣敬LED灯唯卜,也就是流水灯效果的控制,可以用定时器来控制,这样做相对代码量较少而时指岩穗间比较精确,外部中断0接以按键,可以控制动态效果的启停。程序如下:ORG 0000H
LJMP MAIN
ORG 0003H
LJMP EXT0外部中断0,控制流水灯启停
ORG 000BH
LJMP T0ISR定时0控制流水灯循环点亮
ORG 0030H
MAIN:
MOV TMOD,#01H设置定时器0工作模式
MOV TH0,#HIGH(65536-60000)60毫秒定时
MOV TL0,#LOW(65536-60000)
SETB ET0
SETB EA
MOV A,#0FEHLED等初始化
MOV P0,A
SJMP $
EXT0:
CPL TR0
RETI
T0ISR:
CLR TR0
MOV TH0,#HIGH(65536-60000)
MOV TL0,#LOW(65536-60000)
SETB ET0
RL A
MOV P0,A循环点亮LED灯
RETI
END
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)