99问答网
所有问题
请教高手,用51单片机独立按键控制数码管数字加减,为什么在按下独立按键的时候会出现闪烁?怎么回事?
如题所述
举报该问题
推荐答案 2013-04-12
因为你按键的时候影响了数码管刷新;
数码管一般都是动态扫描的,利用人眼的视觉暂留做的,你按下按键的时候,肯定有延时消抖,延时的时候就影响了数码管显示,所以数码管刷新的慢了,人眼就能分辨出来亮和灭的状态....
解决办法
1、改进按键扫描
2、改进数码管显示
3、用嵌入式系统
以上三选一即可解决
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/BetzvetOX.html
其他回答
第1个回答 2013-04-12
因为你的按键没有作消抖处理。
追问
那请问怎样在按键时再次扫描数码管?
第2个回答 2013-04-12
要销抖,并且要判断按下和松开的动作.
追问
那请问怎样在按键时再次扫描数码管?
第3个回答 2013-04-12
按键的时候也要扫描数码管。
追问
那请问怎样在按键时再次扫描数码管?
追答
按键时,需要延时消抖,在延时消抖的时候就可以调用显示程序达到延时的目的。
相似回答
51单片机按键按下的
瞬间
,数码管会
闪一下
答:
标志位都是
单片机
系统自动置位或复位,如标志位溢出,需要在写程序时清0或者置位。
用的时候
检测标志位,如中断while(!TI)TI=0;,一旦TI置1,说明数据发送完毕。
51单片机
中
独立按键控制数码管
时当每个
键按
下去之后松开又恢复原状态...
答:
所以出现你所说的状态,
一种情况是程序有问题,另一种情况是硬件有问题
。具体如何要看你的代码才能确定。
利用
51单片机
开发板
独立键盘的
一个键位来
控制数码管的
前两位。目的是...
答:
目的是每按下一次,数码加一。即有两位数 10 利用
51单片机
开发板
独立键盘的
一个键位来
控制数码管的
前两位。目的是每按下一次,数码加一。即有两位数码管是处于亮的状态。一开始显示“00”,可是每次
按下独立键盘
是数码管的前一位... 利用51单片机开发板独立键盘的一个键位来控制数码管的前两位。目的是每按下一次...
c51单片机按键
每按一次同时
数码管
显示
数字
加一是
什么
?
答:
\x0d\x0a用外部中断,\x0d\x0a每中断一次,中断服务程序将数组元素加一P0=Shuzu[ax++](或指针加一:P0=*P++)\x0d\x0a以上假设P0口驱动
数码管
!\x0d\x0a至于数码管使用的是共阳还是共阴,就把相对的数值存在数组中!\x0d\x0a-\x0d\x0a外部中断0的中断程序入口\x0d\x0avoid TI_0() interrupt...
51单片机
AY89C52两个
按键控制
一个
数码管
0—9显示的加一或减一
为什么
...
答:
if(P1_1==0) { Count--; if(Count==-1) Count=0; P0=table[Count]; while(P1_1==0); } } if(P1_0==0) { delay10ms(); if(P1_0==0) { Count++; if(Count==10) Count=9; P0=table[...
51单片机
学习
按键控制数码管
问题
答:
不断的试验程序,才会知道问题的所在,这经验要慢慢积累 经常把写好的程序,改掉某些数值,看看其有什么反应,并记下来 还有,养成个习惯,把有问题的程序改好后,在后面注释此次出的问题,如何解决,最好在记录在小本子上,这样以后再出现类似的问题也知道怎么解决 希望对你有帮助 ...
51单片机,用独立键盘控制
静态
数码管
显示1-8,自学的,错误连篇,求大神帮 ...
答:
按键程序 / //30 void anjian(){ uint i;//这以后的错误是变量i没定义 if(K1==0){ yanshi(10);if(K1==0){ dig=number[1];while((K1==0)&&(i<50)){//40 yanshi(10);i++;} i=0;} } if(K2==0){ yanshi(10);if(K2==0)//50 { dig=number[2];while((K2==0)&&(i...
用51单片机
做一个
键盘,按
一下
数码管
加1,可是无论我怎么消抖动,总是有...
答:
你可以在去抖程序里加入检测松手程序例如 ………if(!key) //检测键盘是否按下 delay()://去抖延时一般是50ms if(!key)//再次检测键盘是否按下 ×××++: //这里写
数码管
加"1"程序 while(key);//加入写句,目的是等待key变为原来的状态才会执行下一条指令!希望可以帮到你!
51单片机
数码管
想让数码管显示
数字,
然后我
按键
可以增加数字,但是我编...
答:
你肯定是用了按键等待的语句:while(!key);需要把它改成 while(!key){ display();} 就可以了!!!正确请采纳………
大家正在搜
单片机数码管用按键控制加减的程序
51单片机怎么用按键控制数码管
51单片机数字键盘控制数码管加减
51单片机按键控制数码管加减
单片机独立按键控制数码管
51单片机数码管按键加一
单片机按键控制数码管
51单片机按键与数码管复用
单片机数码管加减计算器
相关问题
51单片机C语言程序4个独立按键实现对数码管数字显示的加减清...
51单片机按键控制数码管数字加减问题
51单片机中用数码管做秒表时怎么用一个独立按键控制开始和暂停...
51单片机c语言程序 4个独立按键,分别控制4个数码管,每个...
用51单片机用4个独立按键控制8个数码管的加减和
使用89C51单片机单个按键控制一个数码管,当按键按下时数码...
51单片机按键控制数码管数字加减问题
51单片机用4个按键,每个按键被按下都会使数码管显示一个数值