极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11094|回复: 2

帮忙看看程序怎么修改!谢谢!

[复制链接]
发表于 2014-10-29 16:09:18 | 显示全部楼层 |阅读模式
#include <IRremote.h>

int RECV_PIN = 11;   //红外线接收器OUTPUT端接在pin 11
int LED1 = 6;        // 定义LED引脚为6
IRrecv irrecv(RECV_PIN);   // 定义IRrecv 对象来接收红外线信号
decode_results results;   //解码结果放在decode_results构造的对象results里
void irdisplay(unsigned long value)  //  按下按键后,显示本遥控对应的按键
{
  switch(value){         //判定按下的是哪个按键,串口显示按钮名称
  case 0xFFA25D:
    //Serial.println("POWER");
   digitalWrite(LED1, LOW);    //电源键按下,执行关闭LED灯
    break;
  //case 0xFF629D:
  //  Serial.println("Mode");
    break;
  case 0xFFE21D:
  //  Serial.println("MUTE");
    analogWrite(LED1, HIGH);        //静音键按下,执行点亮LED灯
    break;
  case 0xFF9867:
    Serial.println("-");

    break;
  case 0xFF02FD:
    Serial.println("+");
    break;
      }
}
int  n=100;
void setup()
{
  pinMode(LED1,OUTPUT);          // 定义LED为输出引脚
   Serial.begin(9600);          //开启串口通信,并设定波特率为9600
  irrecv.enableIRIn();          //启动红外解码

}
void loop() {

char  c;

  
    while (Serial.available() > 0)  
    {
        c=Serial.read();
        if (c=='+')
          {
            n=n+5;
      if (n>255) {n=0;}
       if (n<0) {n=255;}   
          }
        if (c=='-')
          {
            n=n-5;
       if (n>255) {n=0;}
       if (n<0) {n=255;}   
          }
     
       analogWrite(6,n);
       Serial.println(n);
      
    }
     if (irrecv.decode(&results))  
  {
    //解码成功,收到一组红外线信号  
    irdisplay(results.value);   
    irrecv.resume();         
  }  
}

功能是按下红外上的“—”和“+”减改变灯亮度!
求大神帮忙!谢谢!
回复

使用道具 举报

 楼主| 发表于 2014-10-29 18:04:32 | 显示全部楼层
求大神帮忙!{:soso_e149:}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-30 09:10:13 | 显示全部楼层
怎么没人帮忙?都不会吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-8 13:40 , Processed in 0.033848 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表