【项目实战】【Arduino,米思齐】 红外遥控控制LED灯
【项目实战】【Arduino,米思齐】
红外遥控控制LED灯
本次实验是分别通过米思齐(mixly)、Arduino IDE来实现红外遥控控制LED灯.以下为实验说明.
1实验材料Arduino Uno 主板 * 1
Arduino Uno 原型扩展板 * 1
面包板 * 1
USB数据线 * 1
红外接收器模块 * 1
遥控器 * 1
LED灯 * 1
跳线若干
2面包板接线图3遥控按键说明
/**************
标配红外遥控(品牌:Carmp3)各按键对应红外值
0: FF6897
1: FF30CF
2: FF18E7
3: FF7A85
4: FF10EF
5: FF38C7
6: FF5AA5
7: FF42BD
8: FF4AB5
9: FF52AD
+: FFA857
-: FFE01F
100+: FF9867
200+: FFB04F
EQ: FF906F
PREV: FF22DD
NEXT: FF02FD
PLAY/PAUSE:FFC23D
CH-: FFA25D
CH: FF629D
CH+: FFE21D
PWM引脚(可用analogwrite控制灯的亮度):3 5 6 9 10 11
*/
4Arduino源码#include
int RECV_PIN = 3;
int LED_PIN = 10;
IRrecv irrecv(RECV_PIN);
decode_results results; // 用于存储编码结果的对象
int val = 0;
void setup()
{
Serial.begin(9600);
irrecv.enableIRIn();
//初始化红外解码Start the receiver
pinMode(LED_PIN, OUTPUT);
digitalWrite(LED_PIN, LOW);
analogWrite(LED_PIN, 0);
}
void loop()
{
int i;
if (irrecv.decode(&results))
{
Serial.println(results.value, HEX);
if (results.value == 0xFF6897) //关灯 按键0
{
digitalWrite(LED_PIN,LOW);
}
else if (results.value == 0xFF30CF ) //开灯 按键1
{
digitalWrite(LED_PIN,HIGH);
}
else if(results.value == 0xFF18E7) //设置亮度为200(用模拟写方式实现,灯必须接3,5,6,9,10,11口) 按键2
{
analogWrite(LED_PIN, 200);
}
else if(results.value == 0xFF7A85) //设置亮度为10(用模拟写方式实现,灯必须接3,5,6,9,10,11口) 按键3
{
analogWrite(LED_PIN, 10);
}
irrecv.resume(); // Receive the next value
}
delay(100);
}
5米思齐模块6实验效果图
--end--
声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com