基于单片机的红外遥控器解码器设计

2022-09-12

1 红外遥控信号发送电路SAA3010T及遥控信号

1.1 SAA3010简介

SAA3010是一款红外遥控发射集成电路, 采用CMOS工艺制造, 低电压工作, 单管脚的振荡器, 双相位发射技术, 最大可提供2048个编码。一般为28P表贴封装, 管脚信号的功能定义为:KI0~KI3为键盘扫描输入端, KO0~KO7为键盘扫描驱动管脚, C0~C3键盘扫描输入, SMS为系统模式选择输入, MDout为用载波 (频率为fc/12, 占空比为33%) 调制的码脉冲输出, Dout为合成码数据输出端, OSC为振荡器输入管脚, T为测试端, VDD电源正, VSS电源负。

本系统中SMS接高电平, 遥控器工作于单系统方式, Cx输入端与KOx之间的连线提供了32种用户编码的选择, 如图1所示。

1.2 载波波形

使用4 5 5 K H z晶振, 经由内部分频电路, 信号被调制在37.91Khz, 占空比1∶3, 如图2所示。

调制频率 (晶振使用455Khz时) fCAR=1/TC=fOSC/12=38Khz, fOSC为晶振频率, 占空比为T1/TC=1/3。

1.3 数据格式

输出端产生的编码由MD端输出, 它由4部分组成:起始位1.5bit (2个逻辑“1”) 、控制位 (1位) 、用户编码位 (5位) 、指令编码位部分 (6位) , 如图3所示:

1.4 位定义

SAA3010的位传送方式采用双相位, 位“1”和位“0”的相位正好相反, 如图4所示。

2 解码器的硬件设计

2.1 SFH506-38

SFH506-38是一种红外接收头电路, 内部将红外接收管与放大电路集成在一体, 体积小 (大小与一只中功率三极管相当) , 密封性好, 灵敏度高, 并且价格低廉。它的主要功能包括放大、选频、解调几大部分。要求输入信号需是已经被调制的信号。经过它的接收放大和解调会在输出端直接输出原始的信号。

2.2 SFH506-38与MCU接口

SFH506的out端 (3p) 接51单片机的外部中断0或外部中断1, 本例中接INT1。如图5所示。

注意SFH506的2脚与1脚之间最好接10us电解电容及104电容, 以防电源干扰。

3 单片机接收程序

当按下遥控器按键时, 遥控器发出一串二进制代码, 称其为一帧数据。根据各部分的功能, 分别为引导码 (2位“1”) , 控制码 (1位x) , 用户码 (5位“0”) , 指令码 (6位) 。解码算法如下。

(1) 设外部中断1 (接SH506数据输出端) 为低电平触发, 允许中断。定时器T0工作于定时方式2 (自动重装在时间常数) , 定时时间常数为20us, 高优先级中断。

(2) 定时器T0的中断服务函数为每20us (1/4位时间) 到, T20_c计数器加1。

(3) 外部中断1的中断服务函数的算法:

(1) 关闭外部中断, 启动T0定时器, 清计数器T20_c。

(2) 判断第一位起始位是否为1, 并丢掉该位, 清计数器T20_c, 清接收数据位计数器。

(3) 接收后面的13位数据的每一位, 每一位的时间1.668ms

(4) 停止定时器, 接收的13位数据取反送I RDA_dat, 从IRDA_dat中提取5位用户码。

(5) 当第二个起始位为1且用户码为00000, 表明本帧数据有效, 提取6位指令码, 否则行纠错处理。

(6) 等待外部中断1 (IRDA) 变高, 打开外部中断1。

参考代码如下

4 测试

如何检测遥控器按下某键的指令码 (键值) , 可将其通过串行口发送到PC机, PC机安装一串口调试工具软件如图6所示。设置好串口、波特率等参数后, 接收到的遥控器的按键的指令码如图6所示。测试程序关键代码如下:

5 结语

将遥控器用作单片机系统的输入, 硬件、软件上占用一个外部中断源 (INT1) , 软件用到一个定时器 (T0) , 便能扩展32个按键。解决了常规矩阵键盘线路板过大、布线复杂、占用I/O口过多的弊病。而且通过使用遥控器, 操作时可实现人与设备的分离, 从而更加方便使用。

摘要:SAA3010T是一种通用型红外遥控信号发送用的集成电路, 适用于电视机、组合音响、VCD、DVD、风扇、电玩等设备的遥控操作。本文给出基于单片机STC80C51, 红外发送芯片为SAA3010T, 红外接收为SFH506的解码器设计, 作为单片机应用产品的输入设备用于参数设置, 在实际应用中收到了良好效果。

关键词:红外遥控发射器AS3010,红外接收头SH506-38,编码,接口电路,解码程序

参考文献

[1] AS3010红外遥控器芯片说明书—深圳爱思科微电子有限公司.http//www.asic.com.cn.

[2] SAA3010DATA SHEET Infrared re-mote control transmitter RC-5.

[3] 李泽光.基于单片机的红外遥控器 (TC9012F) 解码器设计[J].电子器件应用, 2007.9.

[4] StudyⅣ51单片机开发板[J].电子制作, 服务部提供, 2009, 3.

[5] 马忠梅, 等.单片机C语言应用程序设计 (第4版) [M].2008, 3.

[6] 周陈平.串口调试工具Commix1.4.0.0.

上一篇:石羊河治理项目的工程造价控制方法下一篇:基于模拟的形态提取