您现在的位置: 主页 > MCU > 单片机技术应用 > 51 汇编语言编程:8个按键控制8个LED -
本文所属标签:
为本文创立个标签吧:

51 汇编语言编程:8个按键控制8个LED -

来源: 网络用户发布,如有版权联系网管删除 2018-09-06 

[导读]
;P2 外接八个按键,P1 外接八个 LED;一个按键对应控制一个灯,比如 P2.0 只控制 P1.0。;按一下键,对应的 LED 亮灭转换一次;不按则保持状态,常亮或常灭 ORG 0000H LJMP START ORG 000BH MOV TH

;P2 外接八个按键,P1 外接八个 LED

本文引用地址: http://www.21ic.com/app/mcu/201806/764363.htm


;一个按键对应控制一个灯,比如 P2.0 只控制 P1.0。


;按一下键,对应的 LED 亮灭转换一次


;不按则保持状态,常亮或常灭



ORG 0000H

LJMP START

ORG 000BH

MOV TH0, #HIGH(65536 - 10000) ;10ms@12MHz

MOV TL0, #LOW(65536 - 10000)

MOV A, P2

CPL A

MOV B, A

XRL A, 21H

ANL A, 21H

MOV 22H, A

MOV 21H, B

XRL 20H, A

MOV P1, 20H

RETI

;---------------------------------

START:

MOV TMOD, #01H

MOV TH0, #HIGH(65536 - 10000) ;10ms@12MHz

MOV TL0, #LOW(65536 - 10000)

SETB TR0

MOV IE, #82H


LOP:SJMP LOP


END



本程序完全符合题目要求,但是并没有被提问者选中。


提问者选中的程序,比做而论道写的,罗嗦的也太多了。


该程序的作者,对题目要求都理解不了,甚至说题目有矛盾。


当其故作高深的提出建议后,由此就得到了提问者的认同。


感兴趣的网友,可以打开题目链接,看看两个程序功能,相差多少。



其实,本程序,还可以更简单一些:


ORG 0000H

MOV A, P2

CPL A

MOV B, A

XRL A, 21H ;C_T

ANL A, 21H ;

MOV 21H, B ;C_L

XRL P1, A

DJNZ R7, $

DJNZ R6, $ - 2

JMP 0000H


END



              查看评论 回复



嵌入式交流网主页 > MCU > 单片机技术应用 > 51 汇编语言编程:8个按键控制8个LED -
 

"51 汇编语言编程:8个按键控制8个LED -"的相关文章

网站地图

围观()