极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 14109|回复: 1

红外解码,为什么每次结果都不一样?

[复制链接]
发表于 2015-9-30 20:31:30 | 显示全部楼层 |阅读模式
用网上的红外解码例子,每次解码结果都不一样,用电视遥控每次解码是三行?

#include <IRremote.h>  // 使用IRRemote函数库

const int irReceiverPin = 11;  // 红外接收器的 OUTPUT 引脚接在 PIN2 接口 定义irReceiverPin变量为PIN2接口

IRrecv irrecv(irReceiverPin); // 设置irReceiverPin定义的端口为红外信号接收端口
decode_results results;    // 定义results变量为红外结果存放位置

void setup()
{
  Serial.begin(9600);   // 开启串口,波特率为9600
  irrecv.enableIRIn();   // 启动红外解码
}

void loop()
{
  if (irrecv.decode(&results)) {   // 解码成功,把数据放入results变量中
    // 把数据输入到串口
    Serial.print("irCode: ");            
    Serial.print(results.value, HEX); // 显示红外编码
    Serial.print(",  bits: ");           
    Serial.println(results.bits); // 显示红外编码位数
    irrecv.resume();    // 继续等待接收下一组信号
  }  
}

这是电视遥控1键
irCode: 81972EE,  bits: 32
irCode: A3FFD1CF,  bits: 32
irCode: DB14D038,  bits: 32
irCode: DCC8CD07,  bits: 32
irCode: 8710B0D6,  bits: 32
irCode: D23DF6A9,  bits: 32
irCode: 811DAB6C,  bits: 32
irCode: 48B1C77F,  bits: 32
irCode: DD54345E,  bits: 32
irCode: 6FCEEDD0,  bits: 32
irCode: C199D1CC,  bits: 32
irCode: BD65FF34,  bits: 32
回复

使用道具 举报

发表于 2015-10-5 15:50:18 | 显示全部楼层
估计是解析出问题了,建议自己捕捉原始编码。
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-8 03:30 , Processed in 0.038543 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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