推动长按一次后,按钮停止计数

时间:2018-03-01 19:44:00

标签: c arduino arduino-ide

我有一个使用arduino的项目,其基本思路是让一个计数器增加一个按钮 我正在寻找的是,一旦长按触发按钮,不要使counter1例如增加1。

那么如何使用Arduino的软件完成这项任务?

1 个答案:

答案 0 :(得分:0)

一种可能性是使用具有正边沿的中断引脚。你应该使用与按钮平行的电容去抖动。 这是外部中断的arduino参考页面。 External Interrupts in Arduino

我认为用一些代码示例描述它很好。如果您对此有疑问,请告诉我。顶部的表格很重要。并非所有引脚都可用于它。

因此每次按下按钮都会触发中断(如果选择选项为HIGH)。如果按住按钮,则不会触发中断。在中断服务程序中,您可以递增计数器。

对于去除按钮,您可以使用例如100nF陶瓷电容器(例如10V)。但是Debouncing可以通过几种方式完成。这是与arduino一起使用去抖动开关的好答案的问题。 Switch debouncing - would toggle switch still bounce。还有一个应该有效的ISR。您不再需要使用硬件去抖动。