单片机 ,汇编语言。请高手,看下出了什么问题。disp为显示子程序

2025-03-07 06:16:13
推荐回答(1个)
回答1:

是不是按键部份有问题?
WAIF_KEY:
JB KEY1,WM1
LCALL DISP
JNB KEY1,BP1
BP1:

MOV A,MIN 中,JNB那里,本来是判断按键是否松开,若松开,则运行BP1。若未松则等待。你这程序是不管KEY1有没松开,程序都运行到BP1
应改为:
LCALL DISP
JNB KEY1,$-3;即未松开,转上一条指令。就是等待松开,同时显示。这里LCALL 是三字节指令,占3 个单元,所以要$-3 。
同样后面的KEY2、KEY3也同样处理。