找回密码
 立即注册
楼主: lhf_1230

求助!急 键盘扫描串口发送键值不定时异常

[复制链接]

2

主题

5

回帖

50

积分

注册会员

积分
50
 楼主| 发表于 2024-5-29 16:21:03 | 显示全部楼层
梁*** 发表于 2024-5-29 15:17
行列扫描按键不正常,都是扫描时序和IO设置的问题。
行列扫描按键,IO设置为准双向口,也可以打开内置的额 ...

您说的这种的不稳定,应该不是干扰导致的吧?如果是这种情况的话,我两个板子不管按键多少都会出现不稳定的情况,现实的情况是按键少的板子使用将近两年了一直没问题,按键多的那个板子集中出现问题。
我确实设置了准双向口,IO置位和读取的过程中都加了1ms的延时,没有打开内置的额外4K的上拉电阻,这点我可以试一下

点评

你们自己测试有发现不稳定吗? 扫描按键仅仅是输出IO、读取IO而已,这个本身不会导致不稳定,扫描键盘出现不稳定,通常是有强大的干扰导致IO变化(示波器很容易看出来)、或者软件处理不好,基本就是这两个原因。  详情 回复 发表于 2024-5-29 16:38
回复

使用道具 举报 送花

83

主题

8219

回帖

1万

积分

超级版主

积分
17644
发表于 2024-5-29 16:38:30 | 显示全部楼层
lhf_*** 发表于 2024-5-29 16:21
您说的这种的不稳定,应该不是干扰导致的吧?如果是这种情况的话,我两个板子不管按键多少都会出现不稳定 ...

你们自己测试有发现不稳定吗?
扫描按键仅仅是输出IO、读取IO而已,这个本身不会导致不稳定,扫描键盘出现不稳定,通常是有强大的干扰导致IO变化(示波器很容易看出来)、或者软件处理不好,基本就是这两个原因。
回复

使用道具 举报 送花

2

主题

5

回帖

50

积分

注册会员

积分
50
 楼主| 发表于 2024-5-29 16:42:20 | 显示全部楼层
梁*** 发表于 2024-5-29 16:38
你们自己测试有发现不稳定吗?
扫描按键仅仅是输出IO、读取IO而已,这个本身不会导致不稳定,扫描键盘出 ...

在自己车间测试,从来没有出线过这样不稳定的现象,客户反馈不正常的,反反复复返回来几次也是完全正常的,返回客户现场又是频繁不正常,不止一个客户是这种情况,已经有十几家客户出现这样的现象了,包括国外的客户
回复

使用道具 举报 送花

33

主题

3078

回帖

7172

积分

论坛元老

积分
7172
发表于 2024-5-29 16:49:10 | 显示全部楼层
lhf_*** 发表于 2024-5-29 16:42
在自己车间测试,从来没有出线过这样不稳定的现象,客户反馈不正常的,反反复复返回来几次也是完全正常的 ...

找个近的客户过去看看现场情况?
参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
回复

使用道具 举报 送花

已绑定手机

19

主题

3551

回帖

8057

积分

论坛元老

积分
8057
发表于 2024-5-29 20:10:29 来自手机 | 显示全部楼层
真实环境和测试环境会差很多,真实环境会比较恶劣。
回复

使用道具 举报 送花

865

主题

1万

回帖

2万

积分

管理员

积分
25122
发表于 2024-5-29 21:54:18 | 显示全部楼层
把实际电路原理图的PDF发上来,大家一起帮你分析
回复

使用道具 举报 送花

已绑定手机

18

主题

649

回帖

1921

积分

荣誉版主

积分
1921
发表于 2024-5-30 10:44:42 | 显示全部楼层
有时候不是不相信 准双向口 ,作为按键扫描的时候,要么外加上拉,要么使能内部上拉,会稳定很多.
回复

使用道具 举报 送花

865

主题

1万

回帖

2万

积分

管理员

积分
25122
发表于 2024-5-30 10:55:55 | 显示全部楼层
把实际电路原理图的PDF发上来,大家一起帮你分析

行列式按键扫描,输入用高阻,打开内部上拉/或外部已有上拉,
===如打开内部上拉,则等 1mS, 再读外部状态,

===则外部对地分布电容再大,也可以认为外部被拉高了
===大概 T = 0.7 R*C


对应的内部上拉电阻,上电就打开,不要关 !
外部上拉电阻在跑用户程序时,已有充分的时间
===将外部对地分布电容拉高了
===上电时就在同步拉高

后面行列式按键扫描,I/O要输出低电平,可以开漏输出低

===开漏输出低就是强推挽的输出低,从高拉低也是要时间的,这个较短
===开漏输出低就是准双向口的输出低
===开漏输出高就是高阻输入,从
开漏输出低回到开漏输出高/浮空高阻输入
         等外部实际被外部上拉电阻/内部上拉电阻拉高,还是要时间的
大概 T = 0.7 R*C
所有也可以统一用开漏模式
===到这个理解,也就及格了



回复

使用道具 举报 送花

1

主题

26

回帖

3102

积分

论坛元老

积分
3102
发表于 2026-8-20 08:18:21 | 显示全部楼层
还是键盘程序,我好像也遇到这个问题,相同程序,一样的硬件,一些板子正常运行,一些不行,把有问题的板子元件换完,还是不行,简直就是玄学,现在还在查原因,估计应该是软件的问题。
回复

使用道具 举报 送花

已绑定手机

10

主题

409

回帖

1119

积分

金牌会员

积分
1119
发表于 2026-8-20 13:36:53 | 显示全部楼层
rz12*** 发表于 2026-8-20 08:18
还是键盘程序,我好像也遇到这个问题,相同程序,一样的硬件,一些板子正常运行,一些不行,把有问题的板子 ...

软件、硬件和环境都有可能导致矩阵键盘出问题。楼上几位超级大佬要看原理图,楼主最终也没有发原理图和代码,是否解决问题也没有给个说法,成为悬疑贴。可能是犯的错误太低级,不好意思说出来。其实人非圣贤孰能无过。技术论坛,相互交流提高,只要不涉及核心机密,有什么不能说的呢。单片机遵循的是物理规律和逻辑,与玄学无关。难不成代码跑不通还要请和尚开光?常见的矩阵键盘代码不下十种写法,各有特点。没有一招打遍天下的代码。
回复

使用道具 举报 送花

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

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-9-23 15:04 , Processed in 0.085657 second(s), 85 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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