红外遥控器

红外遥控器一、软件-硬件二、简要原理1、硬件原理图2、实物连接图3、控制原理三、工程配置1、说明2、引脚配置四、主要函数1、用户函数五、实验现象

本节教程演示:通过串口0打印红外遥控器的对应键值

一、软件-硬件

二、简要原理

1、硬件原理图

upscalemedia-transformed (34)

2、实物连接图

未命名的设计 (40)

3、控制原理

通过中断触发红外数据的接收,根据红外接收器的输出引脚高电平时长判断数据是0或1,从而实现红外遥控器键值的数据读取。

格式作用
引导码标识指令的开始
地址码(用户码)标识遥控器的设备地址
地址反码增强数据传输可靠性
数据码具体遥控器指令
数据反码增强数据传输可靠性

image-20231027121327749

image-20231027151422580

0:560us的38KHz载波 + 560us的无载波间隔组成

1:560us的38KHz载波 + 1680us的无载波间隔组成

0:560us低电平 + 560us高电平

1:560us低电平 + 1680us高电平

当红外接收器收到红外载波信号时,HS0038B的DATA输出引脚输出低电平

当红外接收器没有收到红外载波信号时,HS0038B的DATA输出引脚输出高电平

红外接收器(开发板集成)对应引脚
HS0038BPB3

三、工程配置

1、说明

具体可以参考基础教程完成开发环境的搭建。

2、引脚配置

image-20251031110229779

image-20251031110246378

image-20251031110258169

image-20251031110312185

 

 

四、主要函数

主要介绍用户编写的功能代码,详细代码可以自行打开我们提供的工程文件,进入Bsp文件夹下查看源代码

1、用户函数

函数:receiving_infrared_data

函数原型uint8_treceiving_infrared_data()
功能描述接收红外数据
输入参数
输出参数红外数据

函数:guide_and_repeat_code_judgment

函数原型uint8_t guide_and_repeat_code_judgment(void)
功能描述红外数据是否正确判断
输入参数
输出参数0和1用来判断地址码和命令码是否正确

五、实验现象

下载程序成功后,按一下开发板的RESET按键,观察串口调试助手现象!

现象:

按红外遥控器上的不同键值,串口会打印不同键值对应的数据。

image-20251031105852239