51单片机汇编程序代码,该如何处理
51单片机汇编程序代码
题目:用51单片机I/O端口和扩展口控制LED和按键
①按键扫描子程序,每50ms检查按键状态。
②LED输出子程序
③按1次键,377扩展输出口驱动LED灯(位输出“1”点亮相应位灯)显示内容改变1次(0x00-0x01-0x02-0x04-0x08-0x10-0x20-0x40-0x80-0xff循环),初始状态显示0x00。
------解决思路----------------------
看来是个作业题啊,实在不行就先用C写出来实现功能了,反汇编出汇编的代码得了
------解决思路----------------------
如果验证是机器验 直接C 汇编出来汇编代码算了
汇编的话 里面的函数调用会有点麻烦
------解决思路----------------------
KEY BIT P1.0
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0ISR
ORG 0030H
MAIN:
MOV TMOD,#01H
MOV TH0,#HIGH(65536-50000) ;定时50毫秒
MOV TL0,#LOW(65536-50000)
SETB TR0
SETB ET0
SETB EA
CLR A
SJMP $
T0ISR:
CLR TR0
MOV TH0,#HIGH(65536-50000)
MOV TL0,#LOW(65536-50000)
SETB TR0
JB KEY,T0E
MOV DPTR,#LEDTAB
PUSH ACC
MOVC A,@A+DPTR
MOV P0,A
POP ACC
INC A
MOV B,#10
DIV AB
T0E:
RETI
LEDTAB:
DB 00H,01H,02H,04H,08H,10H,20H,40H,80H,0FFH
END
题目:用51单片机I/O端口和扩展口控制LED和按键
①按键扫描子程序,每50ms检查按键状态。
②LED输出子程序
③按1次键,377扩展输出口驱动LED灯(位输出“1”点亮相应位灯)显示内容改变1次(0x00-0x01-0x02-0x04-0x08-0x10-0x20-0x40-0x80-0xff循环),初始状态显示0x00。
------解决思路----------------------
看来是个作业题啊,实在不行就先用C写出来实现功能了,反汇编出汇编的代码得了
------解决思路----------------------
如果验证是机器验 直接C 汇编出来汇编代码算了
汇编的话 里面的函数调用会有点麻烦
------解决思路----------------------
KEY BIT P1.0
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0ISR
ORG 0030H
MAIN:
MOV TMOD,#01H
MOV TH0,#HIGH(65536-50000) ;定时50毫秒
MOV TL0,#LOW(65536-50000)
SETB TR0
SETB ET0
SETB EA
CLR A
SJMP $
T0ISR:
CLR TR0
MOV TH0,#HIGH(65536-50000)
MOV TL0,#LOW(65536-50000)
SETB TR0
JB KEY,T0E
MOV DPTR,#LEDTAB
PUSH ACC
MOVC A,@A+DPTR
MOV P0,A
POP ACC
INC A
MOV B,#10
DIV AB
T0E:
RETI
LEDTAB:
DB 00H,01H,02H,04H,08H,10H,20H,40H,80H,0FFH
END