51单片机通过外部中断和开关控制LED闪亮

51单片机通过外部中断和开关控制LED闪亮,第1张

是岩核瞎不是按一下开关触发中断粗空,使LED闪烁,氏薯再按一下,LED熄灭?

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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12470076.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存