Arduino Uno中断开关LED

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Arduino Uno中断开关LED相关的知识,希望对你有一定的参考价值。

我有一个Arduino Uno和一个Arduino Nano通过XBee Series 1无线电成功通信。

一个光传感器连接到Arduino Uno,读取光强度数据并将其上传到连接到我PC的另一个XBee无线电。 Arduino Uno附带一个LED(继电器后建模)。

我想在Arduino Nano上按下按钮时通过XBee无线激活这个继电器,我想到了在Arduino中使用attachInterrupt()函数。这是因为void loop()中存在1s延迟,但是当我按下Arduino Nano上的按钮时,我希望瞬间激活继电器。

如果我要将数据从Arduino Nano上的XBee无线发送到我的Uno,我可以问一下attachInterrupt()函数是否可行?

谢谢! :)

答案

根据您的想法,我建议不要在中断功能中实现所有继电器操作。通常情况下,中断处理程序只管理必要的部分,这些部分可以在没有任何挂起操作的情否则,该操作将阻止以下中断处理。因此,您最好声明一个标志来检测按钮事件,并在循环操作中检查此标志以将数据发送到PC。

但是,由于竞争条件,这个标志会被错误地引用。如果您需要更一致的检测,那么您最好遵循Task库中的一些示例。我想您可能对ButtonInterrupt和MessageTask等示例感兴趣。

以上是关于Arduino Uno中断开关LED的主要内容,如果未能解决你的问题,请参考以下文章

Proteus仿真Arduino UNO利用74LS148扩展中断

物联网Arduino Uno开发板连接阿里云实现云端远程控制LED灯开关

Arduino UNO利用外部中断测量RC接收器PPM脉宽

Arduino Uno+步进电机28BYJ-48 简单应用之摇头转圈自定义模式demo

Arduino Uno 上的两个 ISR

BPI-Nano arduino Nano 开发板和 BPI-UNO arduino UNO 开发板