当前位置: 首页 > news >正文

简单项目 esp8266 红外接收 2025年6月24日21:35:32

项目物料:

  1. 红外接收模块 或 SCR638、HS0038、VS1838等
  2. ESP8266开发板 
  3. 红外遥控器
  4. 支持ESP8266 的 红外库  下载地址_点击直达(科学)

程序代码:

这个程序上传之后  红外遥控器 一个按钮一个按钮 通过串口 获取 十六进制码 

#include <Arduino.h>
#include <WiFiManager.h>
#include <IRrecv.h>
#define IR_RECV_PIN 4  //宏定义接收脚
IRrecv irrecv(IR_RECV_PIN); //实例化对象并设置红外接收脚
decode_results results; //实例化对象 获取返回结果void setup()
{Serial.begin(9600);pinMode(LED_BUILTIN, OUTPUT);irrecv.enableIRIn(); //启用 红外接收脚
}void loop()
{if (irrecv.decode(&results)) //获取返回结果  接收到红外  会返回1 {if (!results.repeat) // 只有非重复码时执行操作{Serial.println(results.value, HEX); //输出十六进制地址}irrecv.resume(); //更新以接收下一个 红外码}
}

获取到十六进制码后 就可以根据 遥控器码 创建代码 例如: 

#include <Arduino.h>
#include <WiFiManager.h>
#include <IRrecv.h>
#define IR_RECV_PIN 4
IRrecv irrecv(IR_RECV_PIN);
decode_results results;void setup()
{Serial.begin(9600);pinMode(LED_BUILTIN, OUTPUT);irrecv.enableIRIn();
}void loop()
{if (irrecv.decode(&results)){if (!results.repeat) // 只有非重复码时执行操作{switch (results.value) {case 0xFFA25D: // 1Serial.println("Button 1 pressed");break;case 0xFF629D: // 2Serial.println("Button 2 pressed");break;case 0xFFE21D: // 3Serial.println("Button 3 pressed");break;case 0xFF22DD: // 4Serial.println("Button 4 pressed");break;case 0xFF02FD: // 5Serial.println("Button 5 pressed");break;case 0xFFC23D: // 6Serial.println("Button 6 pressed");break;case 0xFFE01F: // 7Serial.println("Button 7 pressed");break;case 0xFFA857: // 8Serial.println("Button 8 pressed");break;case 0xFF906F: // 9Serial.println("Button 9 pressed");break;case 0xFF6897: // *Serial.println("Button * pressed");break;}
}irrecv.resume();}
}

 

 

http://www.lqws.cn/news/508987.html

相关文章:

  • JavaScript 存储对象 sessionStorage (会话存储) 和 localStorage(本地存储)
  • 正点原子——直流无刷电机-霍尔传感基本实现流程
  • WEB安全--Java安全--jsp webshell免杀1
  • leetcode114-二叉树展开为链表
  • 人机交互动画制作新突破!文本驱动扩散框架HOIDiNi:一句话驱动虚拟人高精度操作物体。
  • 美团小程序闪购 mtgsig1.2
  • 关于 Babel 编译后的 Generator 状态机结构解析
  • 读取ILA数据进行MATLAB分析
  • 软件行业如何权衡“统一规范“与“灵活创新“?
  • Vue.js 列表过滤实现详解(watch和computed实现)
  • PYTHON从入门到实践4-数据类型
  • 原子操作(CAS)
  • OSS跨区域复制灾备方案:华东1到华南1的数据同步与故障切换演练
  • 嵌入式开发学习日志Day8(ARM体系架构——按键、蜂鸣器及中断)
  • 【bug】searchxng搜索报错Searx API returned an error
  • Vue项目使用defer优化页面白屏,性能优化提升,秒加载!!!
  • java-SpringBoot框架开发计算器网页端编程练习项目【web版】
  • QT多线程
  • Git 子模块 (Submodule) 完全使用指南
  • 烟花爆竹生产企业库房存储安全风险预警系统
  • 【Pandas】pandas DataFrame update
  • 【Docker基础】Docker容器管理:docker stop详解
  • Vue.js:渐进式框架赋能现代Web开发
  • 蓝桥杯嵌入式学习(cubemxkeil5)
  • word中如何快速打出上标?
  • 20250624java面试总结
  • 第九节 CSS工程化-预处理技术对比
  • 大白话蓝牙中的RPC:Remote Procedure Call远程过程调用
  • 壁挂马桶品牌推荐:我的“瑞尔特瑞家HX5”沉浸式体验报告健康与洁净的硬核科技
  • 从设备自动化到智能管控:MES如何赋能牛奶饮料行业高效生产?