Clyde011 发表于 2025-5-8 07:38

按键消抖总是处理不好?

是定时器周期选得太短?还是状态机设计不合理?

Clyde011 发表于 2025-5-8 07:40

G4系列性能好,跑状态机绰绰有余。

Uriah 发表于 2025-5-8 07:41

每次触发后拉高一个锁定时间就好。

Pulitzer 发表于 2025-5-8 07:42

软件消抖时间设得太短了?

Bblythe 发表于 2025-5-8 07:43

CubeMX生成的GPIO设置你改过吗?

Wordsworth 发表于 2025-5-8 07:43

用外部中断+延迟采样比较稳。

万图 发表于 2025-5-8 07:44

有些按键带机械回弹,物理消抖也要考虑。

童雨竹 发表于 2025-5-8 07:45

我用一个数组保存状态滑动窗口判断。

帛灿灿 发表于 2025-5-8 07:46

你是不是用while轮询?容易抖。

周半梅 发表于 2025-5-8 07:47

G431的中断响应够快,自己做消抖效果好。

公羊子丹 发表于 2025-5-8 07:47

我都用定时器+状态机处理。

stormwind123 发表于 2025-5-8 16:22

在STM32G4中按键消抖处理不好,可能由定时器周期设置、状态机设计等多方面因素导致。

stormwind123 发表于 2025-5-8 16:23

一般机械按键的抖动时间在5 - 20ms,定时器周期可设置为10ms左右。例如,可以使用STM32G4的SysTick定时器,每10ms产生一次中断,在中断服务函数中进行按键状态检测。

flycamelaaa 发表于 2025-5-8 16:24

按键本身质量不佳、按键与单片机之间的连接线路存在干扰等,都可能导致按键信号不稳定,影响消抖效果。
页: [1]
查看完整版本: 按键消抖总是处理不好?