单片机的独立按键用来调时间

来源:百度知道 编辑:UC知道 时间:2024/06/24 15:56:31
现在有2个按键,一个是选择键,另外一个是加1键,接在P2.4和P2.5口
汇编程序应该怎么写啊

org 0000h

mov r0,#10;共1-10个变量,存在30H-3AH

main:
jb p2.4,k1;......检测选择键
lcall t20ms
jb p2.4,k1
jnb p2.4,$
djnz r0,k1;......选1-10
mov r0,#10
sjmp main
k1:
jb p2.4,k2;......检测加1键
lcall t20ms
jb p2.4,k2
jnb p2.4,$
mov a,r0
add a,#30h;......变量加1
mov r1,a
inc @r1
k2:
sjmp main

t20ms:;..........去抖动
MOV R7,#4
D1:
MOV R6,#248
DJNZ R6,$
DJNZ R7,D1
NOP
NOP
RET

end

流程可以这样:

如果选择键按下,如果模式为1,就选择秒个位,
如果模式为2,就选择秒十位
如果模式为3,就选择分个位
如果模式为4,就选择分十位
。。。。。依次类推
如果模式为7,就把模式清0,返回

如果加1键按下, 如果模式为1,就选择秒个位加1,
如果模式为2,就选择秒十位加1
如果模式为3,就选择分个位加1
如果模式为4,就选择分十位加1
。。。。。 类推
如果模式为7,就返回

用C语言不行吗?
我只编过C语言