查看: 568|回复: 5

[其他] 红外遥控

[复制链接]

该用户从未签到

发表于 2021-3-31 21:48 | 显示全部楼层 |阅读模式
有没有大佬解释下怎么回事啊
QQ图片20210331214711.png

签到天数: 78 天

[LV.6]常住居民II

发表于 2021-4-1 08:23 | 显示全部楼层
程序三:使用IRremote库,通过红外接收模块接收信号
参考开源代码(Arduino):

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.    3.1 红外遥控器及接收模块系列实验
  4.   安装库:打开IDE—工具—管理库—搜索IRremote库—安装(V2.2.3)
  5.   程序三:使用IRremote库,通过红外接收管接收控制信号
  6.   硬件:使用红外接收模块(带有红外接收LED指示灯)
  7.   实验接线:将红外接收模块接在Arduino UNO的数字2引脚
  8. */

  9. #include <IRremote.h>
  10. int RECV_PIN = 2;
  11. IRrecv irrecv(RECV_PIN);
  12. decode_results results;

  13. void setup(){
  14.   Serial.begin(9600);
  15.   // 假如启动过程出现问题,提示用户启动失败
  16.   Serial.println("Enabling IRin");
  17.   irrecv.enableIRIn(); // 启动接收器
  18.   Serial.println("Enabled IRin");
  19. }

  20. void loop() {
  21.   if (irrecv.decode(&results)) { //检查是否接收到红外遥控信号
  22.     Serial.println(results.value, HEX); //输出指令信息
  23.     irrecv.resume();           //接收下一指令
  24.   }
  25.   delay(100);
  26. }
复制代码



签到天数: 78 天

[LV.6]常住居民II

发表于 2021-4-1 08:20 | 显示全部楼层
我在最近的系列实验中也遇到了这个问题,一度都想放弃了。后来经过代码编程、仿真编程和图形编程三种方式的对比,逐一排查后才发现问题。

简单的说,是红外遥控模块使用的IRremote库,新版3.X版本与使用良久的老版本2.X,内部函数做了一些调整。


大致搜索了一下,网络上的相关演示程序几乎都是老版本库的,大多会发生串口输出乱码。


解决的办法有二个,简单一些的是卸载新版3.X库,经试验测试可安装2.2.3版本,正常使用。


26 (1).jpg


签到天数: 78 天

[LV.6]常住居民II

发表于 2021-4-1 08:24 | 显示全部楼层
实验接收部分的串口信息截图


23.jpg

该用户从未签到

发表于 2021-5-10 01:01 | 显示全部楼层
eagler8 发表于 2021-4-1 08:24
实验接收部分的串口信息截图

如果接收到的是9位数的数据要怎么操作,好像NEC协议只能发送8位的数据

签到天数: 78 天

[LV.6]常住居民II

发表于 2021-5-12 14:56 | 显示全部楼层
zifu 发表于 2021-5-10 01:01
如果接收到的是9位数的数据要怎么操作,好像NEC协议只能发送8位的数据

截个图看看,是什么情况
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门推荐

Arduino16进制字符串转ASCII(下)
Arduino16进制字符串转ASC
在Arduino16进制字符串转ASCII(上)(简称:上文)基础上,举一反三,超越自我,提高
OLED 128*64自制可达10000000个选项的菜单(已更新)
OLED 128*64自制可达10000
OLED 128*64自制可达10000000个选项的菜单 温馨提示: 建议占个楼再食用本帖子
ps2遥控小车——uno实现
ps2遥控小车——uno实现
前几天在阁楼发现了好久以前3d打印,激光切割的底盘,于是决定做这个东西 正好手上又
.h .cpp源代码转.ino草图
.h .cpp源代码转.ino草图
在Github上下载了源码,是.h 和.cpp文件,请问一下,如何才可以转成可以在arduinoIDE
Atmega8/16等AVR单片机改装成Arduino板子
Atmega8/16等AVR单片机改
Atmega8/16改装Arduino板子想把AVR单片机改装成arduino板的,可以通过一下开源库来支
Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
快速回复 返回顶部 返回列表