教程一:红外接收教程
本教程共四步操作,将教大家如何收集电视红外遥控器的编码

视频链接:http://v.youku.com/v_show/id_XNTE2NjQ5NTcy.html

第一步:电路连接,非常简单[本图摘自IRremote作者BLOG]
 
 
 
这里额外说两点,其一红外发射二极管的型号无所谓,常见的是3MM和5MM。但接收管不是全部好用的部分已知红外接收型号如下:
HS0038B(4.5V-5.5V)
PC838(2.5v-5.5v)
IRM_3638

其二,有的红外接收集成了三极管,所以并不需要为了增加功率额外再接一个三极管。详见Datesheet

第二步:安装IRremote库
请直接参考 Arduino入门教程--第二十课--红外遥控器介绍[链接]

第三步:复制代码并下载程序

//本例来自于红外接收模块的IRremote自带范例
/*
 * IRremote: IRrecvDemo - demonstrates receiving IR codes with IRrecv
 * An IR detector/demodulator must be connected to the input RECV_PIN.
 * Version 0.1 July, 2009
 * Copyright 2009 Ken Shirriff
 * [url]http://arcfn.com[/url]
 */

#include <IRremote.h>

;//定义红外接收器的引脚为11
IRrecv irrecv(RECV_PIN);
decode_results results;

void setup()
{
  Serial.begin();
  irrecv.enableIRIn(); // 初始化红外接收器
}

void loop() {
  if (irrecv.decode(&results)) {
    Serial.println(results.value, HEX);//以16进制换行输出接收代码
    Serial.println();//为了便于观看输出结果增加一个空行
    irrecv.resume(); // 接收下一个值
  }
}

第四步:记录红外编码
打开AccessPort串口助手软件并启用监控,手持电视遥控器,依序按键,记录红外编码

教程二:红外发射教程
教程二的操作请参考教程一中的视频,电路图也在教程一已示。本教程就不做过多描述,只说几点注意
1. 安全起见,限流电阻是必须要用的!
2. 红外光是不可见的,需要用手机摄像模式才能看到,详见视频。

第一步:修改代码并下载
根据教程一所记录的红外编码任选其一,例如本例选择频道增加按键
大家根据自己的情况修改程序中红外编码的部分

/*
* 发射红外线信号
* 注意! 红外线发射器(IR LED)必须接到 pin 3, 不能接其它脚位

 Hisense 机顶盒 SD-16127 tested
 */

//By Leo 2013.02.19
//http://weibo.com/leolite
//Update: Pin 3 IR LED test function

#include <IRremote.h>                  // 引用 IRRemote 函式库

IRsend irsend;                          // 定义 IRsend 物件来发射红外线讯号

void setup()
{
  pinMode(, OUTPUT);
  digitalWrite(, HIGH);   // 点亮LED测试(需通过手机摄像模式观察)
  delay();             // 等待3秒
  digitalWrite(, LOW);    // 结束测试
}

void loop()
{
  Serial.print("SendIR: ");
  irsend.sendNEC();   // 记得换成你遥控器的红外线编码
  delay();             // 等待3秒
}

Arduino红外遥控系列教程2013——发射与接收的更多相关文章

  1. Arduino红外遥控系列教程2013——红外转码

    教程三:红外转码教程——用电视遥控器取代机顶盒遥控器 前言前段时间看到了使用红外遥控的X-Bot机器人[链接],感觉很有意思.最近开始玩Arduino与红外,一方面打算将来用于BOXZ的之间的通讯控制 ...

  2. arduino红外遥控库IRremote的IRsend类sendRaw函数溢出问题及其解决方法

    最近在调试红外遥控格力空调,在论坛中学到了不少东西.参考: (1)<解决问题系列(4)——红外编码分析利器使用> (2)<315Mhz模块传输替代315Mhz遥控器> 调试环境 ...

  3. 基于Arduino、STM32进行红外遥控信号接收

    catalogue . 遥控器原理简介 . 红外遥控原理 . 常见红外遥控器红外线信号传输协议 . 遙控器的发展 . 实验过程 . 攻击面 . 基于STM32实现红外信号解码 1. 遥控器原理简介 0 ...

  4. 基于Arduino的红外遥控

    1.红外接收头介绍  一.什么是红外接收头?  红外遥控器发出的信号是一连串的二进制脉冲码.为了使其在无线传输过程中免受其他红外信号的干扰,通常都是先将其调制在特定的载波频率上,然后再经红外发射二极管 ...

  5. 红外遥控接收发射原理及ESP8266实现

    红外遥控是利用近红外光进行数据传输的一种控制方式.近红外光波长0.76um~1.5um ,红外遥控收发器件波长一般为 0.8um~0.94um ,具有传输效率高,成本低,电路实现简单,抗干扰强等特点, ...

  6. 基于FPGA的红外遥控解码与PC串口通信

    基于FPGA的红外遥控解码与PC串口通信 zouxy09@qq.com http://blog.csdn.net/zouxy09 这是我的<电子设计EDA>的课程设计作业(呵呵,这个月都拿 ...

  7. 开发快平台(M302I小e开发板系列教程)

    开发快平台(M302I小e开发板系列教程) 开发块平台ESP8266模块相关理解 一. M302I小e开发板源码注释,源码基于:v1.4.0.8-u34.zip 1. user_main.c /*** ...

  8. 玩转X-CTR100 l STM32F4 l 红外遥控接收

    我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ]      X-CTR100控制器具有红外接收头,例程 ...

  9. 手机遥控器,3.5mm耳机接口红外遥控改造解析

    很多家电都用红外遥控,如电视机.机顶盒.空调.电风扇等.越来越多的遥控器反而给我们带来了更多的问题,有时找不到遥控器放哪儿了,或者混淆了都是麻烦,事实上对手机进行简单的改造,可以自制一个万能红外遥控器 ...

随机推荐

  1. 十四、职责链(Chain of Responsibility)模式--行为型模式(Behavioral Pattern)

    职责链模式是一种对象的行为模式[GOF95].在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链.请求在这个链上传递,直到链上的某一个对象决定处理此请求.发出这个请求的客户端并不知 ...

  2. C指针数组

    #include<stdio.h> #include<stdlib.h> int main(void) { char const *str[] = { "this i ...

  3. (?m) 标记

    <pre name="code" class="html">在和 codec/multiline 搭配使用的时候,需要注意一个问题,grok 正则和 ...

  4. linux 下apache安装、启动和配置

    linux 下 apache安装 1:系统安装,这里就不说了,网上有很多,也很简单.顺便说下,我用的是redhat 9: 2:在图形界面下下载apache 安装包,我下的是 httpd-2.2.9.t ...

  5. Gradle+Jetty实现静态资源的热部署

    本文转自http://www.cnblogs.com/huang0925/p/3302487.html --------------------------------------- 通过Gradle ...

  6. andorid 控件 Bootstrap3.0风格的控件 精美UI控件库

    Bootstrap是Twitter推出的一个开源的用于前端开发的工具包.它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架.Bootstra ...

  7. SQL DCL数据控制语言,用来定义訪问权限和安全级别;

    DCL 1. 创建用户 * CREATE USER username@IP地址 IDENTIFIED BY 'password'; > 用户仅仅能在指定的IP地址上登录 * CREATE USE ...

  8. 阿里云RDS导入服务器数据库 XtraBackup

    如果是centos系统,默认会开启selinux 一定需关闭selinux 解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=dis ...

  9. with ffmpeg to encode video for live streaming and for recording to files for on-demand playback

    We've been doing some experimentation with ffmpeg to encode video for live streaming and for recordi ...

  10. SQL Server 2008 忘记sa密码的解决办法

    由于某些原因,sa和windows验证都不能登录 sql server,可以用独占模式,修改sa密码先在服务管理器停止Sql Server服务,然后打开命令行,进入 SQL Server安装目录,进入 ...