如何编写代码以捕获十六进制和十进制值的远程控制代码

电子说

1.2w人已加入

描述

步骤1:这是您在此项目中需要的东西

红外接收器

一个红外接收器,我正在使用1838B

一个Arduino,我正在使用Arduino Nano

三根跳线

遥控器,您身边的任何人

在此步骤中,我都包括了IRreceiver 1838B的数据表,但是此代码也应对其他IRreceiver有效。

第2步:连接组件

红外接收器

连接是直接的。

连接主机上的信号引脚IRreceiver到Arduino上的PIN 2

将GND引脚连接到将IRreceiver(中间引脚)连接到Arduino的GND引脚

将IRreceiver上的VCC引脚连接到Arduino上的5V引脚

就是这样,将将Arduino连接到您的计算机,然后继续进行草图绘制

步骤3:草图

红外接收器

我在.ino文件中添加了此步骤中的压缩格式

第一行是:

#include

此行将加载运行命令所需的库,如果您还没有的话,可以从https://github.com/z3t0/Arduino-IRremote下载,或者给我发送消息,我会通过电子邮件将其发送给您。

然后我们将在引脚2上定义一个整数RECV_PIN,这是从1838B到Arduino引脚2的信号引脚。

int RECV_PIN = 2;另一个变量用于存储从RECV_PIN接收的数据,称为IRrecv,最后一个变量用于解码结果。//将IRreceiver设置在Arduino

IRrecv irrecv(RECV_PIN)的引脚2上;//为irrecv

decode_results结果创建一个实例;///创建一个实例,将收集的数据存储在

中。在void设置中,我们启动串行监视器并打印一条显示“ Press any button”的行,然后使用irrecv.enableIRIn命令激活接收器。 ()

在空循环中,我们使用以下命令检查IR是否已接收到信号:if(irrecv.decode(&results)),如果是,则将结果以十六进制和十进制格式打印在串行监视器上然后使用irrecv.resume()命令继续收听。

在图片中:我按下了遥控器上的1到0按钮,结果被打印在串行监视器上。

该草图用于捕获信息,并在以后的其他代码中使用。我用它来捕获遥控器上的代码,并将信息保存在文本文件中。这是一个示例:

浅蓝色遥控器的十六进制值

向上箭头= AE2C287E

向下箭头= 1983CB83

右箭头= 903079EF

左箭头= CD564618

电源按钮= 406A9AD7

Page Down = DF580FF9

Page up = 4B8A0854

源= 75D0E6F0

基石= A6D4A34C

自动位置= A131C30

仍然= AEC585B4

静音= 60FD51BC

Enter = C29995F7

菜单= 5165E0A

扩展= 3449863D

体积-= 52DE9202

体积+ = 67E45AC1

现在我们知道如何获取任何远程控制按钮的代码,我将在另一本可指导的示例中向您展示如何使用这些代码进行控制诸如LED,电动机,继电器等。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分