用C语言编写,硬件51单片机,4x4矩阵键盘,6只7段LED数码管。
如何实现:第一次按下一次按键,第一个数码管显示相应的值,再按一次,第二位数码管显示,同时第一位数码管上保留我刚才输入的数。以此类推。按完6次后,数码管上显示我刚才按的6个数字。
关于单片机的键盘控制LED数码管显示的问题
答案:2 悬赏:50 手机版
解决时间 2021-03-14 20:22
- 提问者网友:呐年旧曙光
- 2021-03-14 03:48
最佳答案
- 五星知识达人网友:过活
- 2021-03-14 04:03
设一个变量time,每次按键自加,到六清零。
再设这样一个数组times[]={1,10,100,1000,10000,100000}
每按一个键:number=number+按键值*times[time]
数码管用动态扫描显示,就显示number这个变量
再设这样一个数组times[]={1,10,100,1000,10000,100000}
每按一个键:number=number+按键值*times[time]
数码管用动态扫描显示,就显示number这个变量
全部回答
- 1楼网友:duile
- 2021-03-14 05:05
如果只有一个数码管,那就直接用循环程序进行控制就可以了,当然需要用到数组进行查表运算了;如果是多个数码管,就需要用到循环扫描程序了,此时若是能够合理地使用中断程序,那么主程序的负担就会减轻一些,而且程序的复杂性也相对来说比较简单。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯