我是arduino的新手,目前正在使用Arduino Uno。当超声波测距仪读取特定值时,我需要中断arduino。由于我对此完全陌生,所以我对arduino中的中断一无所知,我期待着一个明确的答案。
发布于 2015-10-31 18:35:31
我假设您使用的是SC-RS04模块,因为这是Arduino爱好者通常使用的。
根据datasheet,距离编码在阿杜伊诺将从模块接收的回波脉冲的持续时间内。
要计算脉冲的宽度,您需要设置两个中断。
一种是用于捕获脉冲起始的上升中断。中断处理程序将使用millis函数来记录脉冲开始的时间。
另一种是记录脉冲结束的下降中断。此中断处理程序将使用millis函数和先前记录的时间来计算持续时间,并根据该持续时间计算距离。如果距离低于特定阈值,它将调用您的逻辑。
有关设置中断的信息,请阅读here。
https://stackoverflow.com/questions/33450133
相似问题