|
|

楼主 |
发表于 2014-11-5 22:27:27
|
显示全部楼层
zoologist 发表于 2014-11-5 22:18 
供电不足?
#include <IRremote.h>
#include <intrins.h>
int n=60;
int RECV_PIN = 11; //红外线接收器OUTPUT端接在pin 11
int motor = 6; // 定义LED引脚为6
IRrecv irrecv(RECV_PIN); // 定义IRrecv 对象来接收红外线信号
decode_results results; //解码结果放在decode_results构造的对象results里
unsigned char light_flg=0; //定义一个变量
void irdisplay(unsigned long value) // 按下按键后,显示本遥控对应的按键
{
switch(value){ //判定按下的是哪个按键,串口显示按钮名称
case 0xFFA25D:
Serial.println("POWER");
light_flg=!light_flg; //取反
if(light_flg==1)
{
analogWrite(motor, n); //静音键按下,执行点亮LED灯
}
else
digitalWrite(motor, LOW); //电源键按下,执行关闭LED灯
break;
case 0xFF9867:
Serial.println("-");
n=n-50;
if (n<0) {n=255;}
analogWrite(6,n);
break;
case 0xFF02FD:
Serial.println("+");
n=n+50;
if (n>255) {n=0;}
analogWrite(6,n);
break;
}
}
void loop()
{
if (irrecv.decode(&results))
{
//解码成功,收到一组红外线信号
irdisplay(results.value);
irrecv.resume();
}
}
void setup()
{
pinMode(motor,OUTPUT); // 定义LED为输出引脚
Serial.begin(9600); //开启串口通信,并设定波特率为9600
irrecv.enableIRIn(); //启动红外解码
}
应该不是吧! |
|