一、实验目的
学会使用遥控器进行控制RGB灯
二、实验设备
硬件:
- Arduion主板
- 红外接收器
- RGB灯
- 遥控器
- 杜邦线
- USB数据线
软件
Arduino IDE
三、实验步骤
1、建立电路
Arduino | 红外接收器 |
---|---|
D0 | 7 |
GND | GND |
5v | VCC |
Arduino | RGB灯 |
---|---|
GND | GND |
9 | R |
10 | G |
6 | B |
2、烧录代码
#include<IRremote.h> const int irReceiverPin = 7; const int rPin = 9; const int gPin = 10; const int bPin = 6; int r; int b; int g; IRrecv irrecv(irReceiverPin); decode_results results; void setup() {
pinMode(rPin, OUTPUT); pinMode(gPin, OUTPUT); pinMode(bPin, OUTPUT); Serial.begin(9600); irrecv.enableIRIn(); } void loop() {
if (irrecv.decode(&results)) {
Serial.print(span class="token string">"irCode:");
Serial.print(results.value, HEX);
Serial.print(",bits:");
irrecv.resume();
}
delay(300);
if (results.value)
{
if (results.value == 0xFFE21D)
{
r = 128;
analogWrite(rPin, g);
}
if (results.value == 0xFFC23D)
{
g = 128;
analogWrite(gPin, g);
}
if (results.value == 0xFF906F)
{
b = 128;
analogWrite(bPin, b);
}
}
if (results.value == 0xFF6897)
{
analogWrite(rPin, 0);
analogWrite(gPin, 0);
analogWrite(bPin, 0);
}
}
四、实验现象
遥控器按CH+键一次显示红灯再按一次关闭,按▷║键一次显示绿灯再按一次关闭,按EQ键显示蓝灯再按一次关闭,按0键关闭灯光。