找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 889|回复: 6
打印 上一主题 下一主题
收起左侧

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

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

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

                      执行......
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:857072 发表于 2023-3-29 23:41 来自手机 | 只看该作者
定时器里加延时???
回复

使用道具 举报

板凳
ID:277550 发表于 2023-3-29 23:41 | 只看该作者
数码管可尝试使用定时器刷新
回复

使用道具 举报

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

使用道具 举报

5#
ID:1034262 发表于 2023-3-30 10:20 | 只看该作者
编程思想问题,主程序和中断中,都不要使用软件延时。
回复

使用道具 举报

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

使用道具 举报

7#
ID:45879 发表于 2023-3-30 13:08 | 只看该作者
a185980800 发表于 2023-3-29 23:41
定时器里加延时???

他是秀儿
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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