会员登录|免费注册|忘记密码|管理入口 返回主站||保存桌面|手机浏览|联系方式|购物车
杭州木头盒科技有限公司
商家二维码
手机查看商家
企业会员 1  
加关注0
15868188372

杭州木头盒科技有限公司

没有填写主营业务~~

新闻中心
  • 暂无新闻
产品分类
联系方式
  • 联系人:王赢凯
  • 电话:86-0576-11111111
站内搜索
 
荣誉资质
  • 暂未上传
友情链接
  • 暂无链接
首页 > 供应产品 > Arduino 红外遥控传感器(含遥控器 MIXLY套件18
Arduino 红外遥控传感器(含遥控器 MIXLY套件18
价       格 18 元/件
供  货  量 2件 (起订≥1件 )对比
品       牌-
厂       家-
规格型号-
产       地-
认       证-
销  售  地 浙江 - 杭州市
发货仓库 -
过期时间 长期有效
详细信息

品       牌

-

包装规格

-

销  售  地

浙江 - 杭州市

材料类型

-

浏览数量

688

特性描述

-

更新时间

2025-09-24 08:32

过期时间

长期有效

工作原理

磁敏传感器

传感器类别

射线辐射传感器

应用领域

-
工作原理 磁敏传感器
传感器类别 射线辐射传感器
材质 聚合物
型号 模拟传感器

满199元全国包邮 活动日期:2016年05月31日 - 2017年01月01日 · 单笔订单满 199 元 ,包邮
(全国包邮,不含港澳台、西藏、新疆)

满199元包邮活动日期:2015.05.04 - 2015.10.31

单笔订单满199.00元包邮全国包邮,不含港澳台、西藏、新疆

 

    红外遥控传感器,与Arduino、Freedom等开源硬件专用传感器扩展板的3Pin接口结合使用,能够实现非常有趣的互动作品。红外遥控同时也是我们生活中最常见的遥控方式,你每天使用的电视遥控器和空调遥控器都是使用这个原理。运用Arduino搭建红外遥控设备也非常简单。你只需一个红外遥控传感器(接收信号)、红外遥控器(发射信号)和Arduino控制器(控制特定的设备)就可以实现了。

电源要求:+3.3-5V输出类型:数字信号接口模式:XH2.54×3引脚定义:1--地  2--电源  3--信号模块重量:15g

接线方式:蜂鸣器接在Arduino开发板的10号引脚处;红色LED接在11号引脚处;红外接收一起模块接在8号引脚处。烧录测试程序。

测试程序:

  #define BUZZER 10//蜂鸣器

  #define LED_RED 11//红灯

  #define IR_IN  8  //红外接收

  int Pulse_Width=0;//存储脉宽

  int  ir_code=0x00;//命令值

  void timer1_init(void)//定时器初始化函数

   {

       TCCR1A = 0X00;

       TCCR1B = 0X05;//给定时器时钟源 

       TCCR1C = 0X00;

       TCNT1 = 0X00;

       TIMSK1 = 0X00;      //禁止定时器溢出中断

  }

  void remote_deal(void)//执行译码结果函数

  {

       switch(ir_code)

    {

       case 0xff00://停止

       digitalWrite(LED_RED,LOW);//红灯不亮

       digitalWrite(BUZZER,LOW);//蜂鸣器不响

       break;

  case 0xfe01://VOL+

       digitalWrite(LED_RED,HIGH);//红灯亮

       break;

  case 0xf609://VOL-

       digitalWrite(BUZZER,HIGH);//蜂鸣器响

       break;

     }

   }

  char logic_value()//判断逻辑值“0”和“1”子函数

  {

      while(!(digitalRead(8))); //低等待

      Pulse_Width=TCNT1;

      TCNT1=0;

  if(Pulse_Width>=7&&Pulse_Width<=10)//低电平560us

   {

      while(digitalRead(8));//是高就等待

      Pulse_Width=TCNT1;

      TCNT1=0;

      if(Pulse_Width>=7&&Pulse_Width<=10)//接着高电平560us

          return 0;

      else if(Pulse_Width>=25&&Pulse_Width<=27) //接着高电平1.7ms

          return 1;

    }

    return -1;

  }

  void pulse_deal()//接收地址码和命令码脉冲函数

  {

        int i;

        //执行8个0

       for(i=0; i<8; i++)

        {

           if(logic_value() != 0) //不是0

           return;

        } 

          //执行6个1

       for(i=0; i<6; i++)

        {

           if(logic_value()!= 1) //不是1

           return;

        } 

          //执行1个0

        if(logic_value()!= 0) //不是0

          return; 

         //执行1个1

        if(logic_value()!= 1) //不是1

          return; 

  //解析遥控器编码中的command指令

  ir_code=0x00;//清零

  for(i=0; i<16;i++ )

  {

    if(logic_value() == 1)

    {

      ir_code |=(1<<i);

    }

  } 

}

  void remote_decode(void)//译码函数

  {

  TCNT1=0X00;      

  while(digitalRead(8))//是高就等待

  {

    if(TCNT1>=1563)  //当高电平持续时间超过100ms,表明此时没有按键按下

    {

      ir_code = 0xff00;

      return;

    } 

  }

  //如果高电平持续时间不超过100ms

  TCNT1=0X00;

  while(!(digitalRead(8))); //低等待

  Pulse_Width=TCNT1;

  TCNT1=0;

  if(Pulse_Width>=140&&Pulse_Width<=141)//9ms

  {

   while(digitalRead(8));//是高就等待

    Pulse_Width=TCNT1;

    TCNT1=0;

    if(Pulse_Width>=68&&Pulse_Width<=72)//4.5ms

    {

      pulse_deal();

      return;

    }

    else if(Pulse_Width>=34&&Pulse_Width<=36)//2.25ms

    {

      while(!(digitalRead(8)));//低等待

      Pulse_Width=TCNT1;

      TCNT1=0;

      if(Pulse_Width>=7&&Pulse_Width<=10)//560us

      {

        return;

      }

    }

  }

  }

  void setup()

  {

  unsigned char i;

  pinMode(LED_RED,OUTPUT);//设置与红灯连接的引脚为输出模式

  pinMode(BUZZER,OUTPUT);//设置与蜂鸣器连接的引脚为输出模式

 pinMode(IR_IN,INPUT);//设置红外接收引脚为输入

  }

  void loop()

  { 

  timer1_init();//定时器初始化

  while(1)

  {

    remote_decode();  //译码

    remote_deal();   //执行译码结果

  }  

1pcsx  红外遥控传感器1pcsx  硅胶按键红外遥控器1pcsx  XH2.54 3Pin 20cm 传感器线