[求助]如何最快地Arduino获取输入信号?
外部信号不断变化,Arduino检测到变化之后,产生相应行为,现在的代码是借用范例程序里"BlinkWithoutDelay"。基本上就是没间隔 'threshold'这么多时间单位,就可以检测触发一次。
void loop()
{
// get NOW , 获得当前时间
if (NOW - prevValue > threshold)// 如果当前时间与上一次时间超过一定数量
{
// 检测信号,触发行为
prevValue = NOW
}
}
还想更快一些。
假设上面的threshold是0,也就是loop没运行一次,Arduino就会去检测,
这时的检测(频率)是多少?
另:
这样感觉CPU在不断忙碌,有更好的方式吗?
毕竟信号变化不是那么频繁,能否等信号发生变化时,自动触发?
多谢。 使用中断,不管在何时端口有变化立即感知。
页:
[1]