首页
Arduino
Arduino控制板介绍
Arduino编程
Arduino中断函数attachInterrupt()详解
为Arduino IDE安装添加库
Arduino相关硬件连接
Arduino Uno R3连接 ESP8266-01无线模块
Python3使用串口连接Arduino
Arduino开发板使用笔记
Arduino UNO 连接 LCD1602
VS1838B 解码红外遥控器
本文档由 内网文摘 发布,转载请注明出处
-
+
首页
VS1838B 解码红外遥控器
### vs1838简介 vs1838参数如下: 工作电压:2.7-5.5V 接收距离:18-20M vs1838具有高灵敏度,抗光、电磁干扰能力强等特性。广泛应该于机顶盒、DVD、AV、TV、空调等,是高档电器的理想选择。 ![](/media/202112/VS1838B连接_1638517053.png) 1838b在单片机电路图中的电容,起到防止烧坏和滤波的作用(没有电容也可使用)。 ### Arduino UNO 开发板使用vs1838示例 红外遥控库文件安装: Arduino UNO 开发板在 「工具」—「管理库」,查找「IRremote」进行安装。 ![](/media/202112/2021-12-03_152027.png) ```cpp #include <IRremote.h> //红外遥控头文件 int RECV_PIN = 2; //管脚定义 IRrecv irrecv(RECV_PIN); decode_results results; int aa; //定义变量 void setup(){ Serial.begin(9600); irrecv.enableIRIn(); //初始化红外遥控 } void loop(){ if (irrecv.decode(&results)){ aa=results.value; //红外接收到遥控器数值 Serial.print("aa="); Serial.println(aa); irrecv.resume(); // 接收下一个值 } } ``` ### ESP8266开发板使用vs1838示例 红外遥控库文件安装: ESP8266 开发板在 「工具」—「管理库」,查找「IRremoteESP8266」进行安装。 ![](/media/202112/2021-12-03_152715.png) ```cpp #include <Arduino.h> #include <IRremoteESP8266.h> #include <IRrecv.h> #include <IRutils.h> const uint16_t kRecvPin = D2; IRrecv irrecv(kRecvPin); decode_results results; void setup() { Serial.begin(115200); irrecv.enableIRIn(); // Start the receiver while (!Serial) // Wait for the serial connection to be establised. delay(50); Serial.println(); Serial.print("IRrecvDemo is now running and waiting for IR message on Pin "); Serial.println(kRecvPin); } void loop() { if (irrecv.decode(&results)) { // print() & println() can't handle printing long longs. (uint64_t) serialPrintUint64(results.value, HEX); Serial.println(""); irrecv.resume(); // Receive the next value } delay(100); } ``` ### Arduino UNO 使用VS1838B接收红外遥控器编码并在LCD1602显示 参考:[Arduino UNO 连接 LCD1602](/project-13/doc-150/ "Arduino UNO 连接 LCD1602") ```cpp //引入依赖 #include <LiquidCrystal.h> // 初始化针脚 const int rs = 7, en = 6, d4 = 5, d5 = 4, d6 = 3, d7 = 2; LiquidCrystal LCD(rs, en, d4, d5, d6, d7); #include <IRremote.h> //红外遥控头文件 int RECV_PIN = 11; //管脚定义 IRrecv irrecv(RECV_PIN); decode_results results; int aa; //定义变量 void setup() { LCD.begin(16,2); //初始化,设置列行 LCD.print("Hello World!"); //在屏幕上显示Hello World! delay(1500); // 清除下一个循环的屏幕 clear screen for the next loop: LCD.clear(); irrecv.enableIRIn(); //初始化红外遥控 Serial.begin(9600); } void loop() { //LCD.clear(); LCD.setCursor(0, 0); //LCD.autoscroll(); if (irrecv.decode(&results)){ aa=results.value; //红外接收到遥控器数值 LCD.clear(); //LCD.print("aa="); LCD.print(aa); //LCD.print(" "); Serial.print("aa="); Serial.println(aa); delay(100); irrecv.resume(); // 接收下一个值 } } ``` 参考连接:[1](https://blog.csdn.net/u011816009/article/details/106572918/ "1") [2](https://blog.csdn.net/qq_23347759/article/details/109226769 "2")
local
2021年12月3日 15:57
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 LocalNetwork
LocalNetwork
是由mrdoc开源
LocalNetwork.cn
修改的在线文档系统,作为个人和小型团队的云笔记、文档和知识库管理工具。
如果此文档给你或你的团队带来了帮助,欢迎支持作者持续投入精力更新和维护!内网文摘 & LocalNetwork
>>>主页
logo
logo
下载Markdown文件
分享
链接
类型
密码
更新密码