标题: MCU按键检测误触,加延时程序以后会影响我的数码管显示? [打印本页]

作者: egsresrhtrhrtst    时间: 2023-3-29 23:19
标题: MCU按键检测误触,加延时程序以后会影响我的数码管显示?
请教一下各位,这是一个放在单片机定时器里的按键检测程序,现在按键按下以后有时会误触一两下,我加了延时以后会影响我的数码管显示,想问一下有没有别的什么解决思路或方法

MCU机源程序如下:
if(key2==0)
                key2num=1;   //按键2标志位
        else if
                (key2num==1)
                {
                        key2num=0;

                      执行......

作者: a185980800    时间: 2023-3-29 23:41
定时器里加延时???
作者: devcang    时间: 2023-3-29 23:41
数码管可尝试使用定时器刷新
作者: lyxing    时间: 2023-3-29 23:43
定时器内用状态机(状态标志),中断内尽量省时,主循环内判断按键,主循环内按键防抖,用显示当延时,就不影响显示。
作者: coody_sz    时间: 2023-3-30 10:20
编程思想问题,主程序和中断中,都不要使用软件延时。
作者: zch5200    时间: 2023-3-30 13:01
估计你的数码管是单片机直接驱动的,延时多了确实会使数码管出现闪烁,解决的办法是中断里定时刷新数码管或者延时函数里加数码管驱动。最有效的是用数码管驱动芯片。
作者: yueguang3048    时间: 2023-3-30 13:08
a185980800 发表于 2023-3-29 23:41
定时器里加延时???

他是秀儿




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