ZKX's LAB

单片机 键盘输入 如何在键盘上输入一个数来设定单片机的工作时间?

2021-04-06知识6

如何在键盘上输入一个数来设定单片机的工作时间? 问题再具体点

51单片机键盘输入 用不着数组。只要增加一个数字vlaue,再让 key 从keyscan()函数中,得到0~9,最后如下计算到vlaue中:vlaue=vlaue*10+key;以后,每得到一个按键数值(0~9),都执行一遍上面的算式,即可。

单片机键盘输入程序 31HVAL EQU 32HORG 00HSTART:MOV DPTR,#TABLE;段码表首地址MOV P2,#10H;数码管显示初始化LSCAN:MOV P3,#0F0H;列线置高电平,行线置高电平L1:JNB P3.0,L2;逐行扫描LCALL DELAYJNB P3.0,L2MOV LINE,#00H;存行号LJMP RSCANL2:JNB P3.1,L3LCALL DELAYJNB P3.1,L3MOV LINE,#01H;存行号LJMP RSCANL3:JNB P3.2,L4LCALL DELAYJNB P3.2,L4MOV LINE,#02H;存行号LJMP RSCANL4:JNB P3.3,L1LCALL DELAYJNB P3.3,L1MOV LINE,#03H;存行号RSCAN:MOV P3,#0FH;行线列线电平互换C1:JNB P3.4,C2;逐列扫描MOV ROW,#00H;存列号LJMP CALCUC2:JNB P3.5,C3MOV ROW,#01H;存列号LJMP CALCUC3:JNB P3.6,C4MOV ROW,#02H;存列号LJMP CALCUC4:JNB P3.7,C1MOV ROW,#03H;存列号CALCU:MOV A,LINE;根据行号和列号计算键值MOV B,#04HMUL ABADD A,ROWMOV VAL,A;存键值MOVC A,@A+DPTR;要据键值查段码MOV P2,A;输出段码显示LJMP LSCANDELAY:MOV R6,#20D1:MOV R7,#250DJNZ R7,$DJNZ R6,D1RETTABLE:DB 00H,01H,02H,03H,04H,05H,06H,07HDB 08H,09H,0AH,0BH,0CH,0DH,0EH,0FHEND应该能看得懂 不是很难的

#单片机键盘输入#单片机键盘原理教程#单片机键盘仿真图#单片机键盘输入数字#薄膜键盘单片机

随机阅读

qrcode
访问手机版