ardunio uno通过红外传感器控制led代码
时间: 2023-10-05 20:12:41 浏览: 247
红外控制led
以下是用Arduino Uno控制LED灯的代码,使用红外传感器控制LED灯的开关:
```
#include <IRremote.h>
int IRPin = 11; //定义红外接收器引脚
IRrecv irrecv(IRPin);
decode_results results;
int ledPin = 13; //定义LED连接的引脚
void setup()
{
pinMode(ledPin, OUTPUT); //将LED引脚设置为输出模式
irrecv.enableIRIn(); //启用红外接收器
Serial.begin(9600); //打开串口通信
}
void loop()
{
if (irrecv.decode(&results)) //如果接收到红外信号
{
Serial.println(results.value, HEX); //将接收到的代码值转换为十六进制并打印输出
irrecv.resume(); //重新启用红外接收器,等待下一次接收
switch (results.value) //根据接收到的红外代码值进行判断
{
case 0xFF6897: //如果接收到代码值为0xFF6897,表示按下红外遥控器的开关按钮
digitalWrite(ledPin, !digitalRead(ledPin)); //LED灯状态取反
break;
}
}
}
```
在这个例子中,我们定义了红外接收器引脚的数字引脚,并通过IRrecv库启用了红外接收器。我们还定义了连接到数字引脚13的LED灯。在循环中,我们使用if语句检查是否接收到了红外信号,如果接收到了,我们将接收到的代码值转换为十六进制并打印输出。然后我们根据接收到的代码值进行判断,如果代码值为0xFF6897,表示按下红外遥控器的开关按钮,我们就会取反LED灯的状态。
阅读全文