arduino红外遥控控制舵机代码
时间: 2023-07-27 16:07:14 浏览: 430
以下是一个简单的 Arduino 红外遥控控制舵机的代码:
```C++
#include <Servo.h>
#include <IRremote.h>
Servo myservo;
int IRpin = 11;
int IRcode = 0;
IRrecv irrecv(IRpin);
decode_results results;
void setup() {
myservo.attach(9);
irrecv.enableIRIn();
}
void loop() {
if (irrecv.decode(&results)) {
IRcode = results.value;
irrecv.resume();
}
if (IRcode == 0xFF629D) { // 红外遥控器按键值
myservo.write(0); // 舵机转到0度
delay(1000);
myservo.write(90); // 舵机转到90度
delay(1000);
myservo.write(180); // 舵机转到180度
delay(1000);
}
}
```
这段代码使用了 `Servo` 库和 `IRremote` 库。首先,我们需要定义一个 `Servo` 类型的对象 `myservo`,以及 IR 接收器的引脚 `IRpin` 和 IR 代码 `IRcode`。然后在 `setup()` 函数中,我们将舵机连接到引脚 9,并启用 IR 接收器。在 `loop()` 函数中,我们使用 `irrecv.decode()` 函数检查是否收到了红外信号,并将对应的 IR 代码保存到 `IRcode` 变量中。如果 IR 代码等于预设值,即红外遥控器按键值,就让舵机依次转到 0 度、90 度和 180 度,并在每个角度上停留 1 秒钟。
阅读全文