找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1896|回复: 6
收起左侧

MCU按键检测误触,加延时程序以后会影响我的数码管显示?

[复制链接]
ID:978416 发表于 2023-3-29 23:19 | 显示全部楼层 |阅读模式
请教一下各位,这是一个放在单片机定时器里的按键检测程序,现在按键按下以后有时会误触一两下,我加了延时以后会影响我的数码管显示,想问一下有没有别的什么解决思路或方法

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

                      执行......
回复

使用道具 举报

ID:857072 发表于 2023-3-29 23:41 来自触屏版 | 显示全部楼层
定时器里加延时???
回复

使用道具 举报

ID:277550 发表于 2023-3-29 23:41 | 显示全部楼层
数码管可尝试使用定时器刷新
回复

使用道具 举报

ID:67199 发表于 2023-3-29 23:43 | 显示全部楼层
定时器内用状态机(状态标志),中断内尽量省时,主循环内判断按键,主循环内按键防抖,用显示当延时,就不影响显示。
回复

使用道具 举报

ID:1034262 发表于 2023-3-30 10:20 | 显示全部楼层
编程思想问题,主程序和中断中,都不要使用软件延时。
回复

使用道具 举报

ID:1004920 发表于 2023-3-30 13:01 | 显示全部楼层
估计你的数码管是单片机直接驱动的,延时多了确实会使数码管出现闪烁,解决的办法是中断里定时刷新数码管或者延时函数里加数码管驱动。最有效的是用数码管驱动芯片。
回复

使用道具 举报

ID:45879 发表于 2023-3-30 13:08 | 显示全部楼层
a185980800 发表于 2023-3-29 23:41
定时器里加延时???

他是秀儿
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表