loutin 发表于 2025-2-23 21:55

单片机按键去抖

若不进行“按键去抖”,单片机在接收按键开关按压带来的一连串电平信息,,这种抖动一般在10ms作用,会导致单片机判断错误。常用的单片机去抖方法主要分为硬件去抖和软件去抖。在开关端子上使用电容器绕过高频脉冲序列(由弹跳产生的),使其发送给单片机。软件去抖://开关状态#define SWITCH_BOUNCE 0int Switch_Debounce(void)int status = SWITCH_BOUNCE;{if(Switch == 0) // Check the status of switch againstatus = SWITCH_PRESSED;}}void DebounceDelay(void)int i = 0;}200-500毫秒的延迟为忽略所有伪上升沿(下降沿)提供了时间。因此避免了因抖动引起的问题。
页: [1]
查看完整版本: 单片机按键去抖