标题: 单片机如何通过矩阵键盘显示4位数? [打印本页]

作者: Castrato    时间: 2022-4-20 16:12
标题: 单片机如何通过矩阵键盘显示4位数?
比如第一次按下0,显示0,第二次按下2显示02,第三次按下3显示023,第四次按下F,显示023F

作者: xianfajushi    时间: 2022-4-20 16:56
使用数组存储与读取显示
作者: xianfajushi    时间: 2022-4-20 16:57
当然不用数组也是可以经过处理的
作者: Castrato    时间: 2022-4-20 17:07
xianfajushi 发表于 2022-4-20 16:56
使用数组存储与读取显示

有源程序吗,我写了很久就只能显示1位
作者: Castrato    时间: 2022-4-20 17:12
xianfajushi 发表于 2022-4-20 16:56
使用数组存储与读取显示

比如说第一次按键我将它存储在a[3]里,第二次在按下时我怎么判断这次值是第二次的按键值还是第一次的按键值,是需要添加标志位吗?是添加在键盘扫描程序里还是主程序中
作者: lkc8210    时间: 2022-4-20 17:24
当有键按下而且键值有效
KeyVal = getKey();
for(i=0;i<3;i++)
{
        a[i] = a[i+1];//移位
}
a[3] = KeyVal;
作者: xianfajushi    时间: 2022-4-20 17:58
可参http://www.51hei.com/bbs/dpj-219577-1.html
作者: xianfajushi    时间: 2022-4-20 18:00
另外i可参https://blog.csdn.net/xianfajush ... 1018.2226.3001.4450
作者: zhxiufan    时间: 2022-4-20 18:03
很好实现,用四个变量比如LED1,LED2,LED3,LED4表示四个数码管的显示数据,每按下一个键这么处理:
LED1=LED2;
LED2=LED3;
LED3=LED4;
LED4=KEYVAL;




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1