红外线遥控电风扇设计思路
概述
遥控电风扇是 90年代初期在广东珠江三角洲地区作做大量的研发和生产,并有专门的掩模芯片作为主控芯片使用,现本人用单片机作了接收和发射的配套使用的系统方案。红外遥控电路现在已成为一种设计电路的时尚,现简单地介绍了红外线遥控发射、接收系统的原理,给出用 89C2051作为遥控接收系统解码器的一种巧妙实现方法,以及完整的51汇编程序代码。包括发射、接收的原理图及其编程的主程序、发送程序、接收程序、定时中断程序的流程过程,从而完成此设计的要点,参考流程方框图的构思过程,可以编写应用软件。遥控电风扇控制系统分为两大部分:遥控器和电风扇控制板,下面分别加以描述。
一、遥控器
为了能远离距的控制电风扇,采用了红外遥控器。通常红外遥控器由发射和接收两部分组成,发射部分由单片机 80C2051等构成。接收部分由单片机89C51等构成。
1. 工作原理及组成部分
(1)CPU 采用AT89C2051单片机,AT89C2051的功能:
和 MCS-8051产品兼容、2KB可重编程闪速存储器、耐久性:1000写/擦除周期、2.7V~6V的操作范围、全静态操作:0Hz~24MHz、两级加密程序存储器、128×8位内部RAM、15根可编程I/O引线、6个中断源、可编程串行UART通道、直接LED驱动输出、片内模拟比较器、低耗空载和掉电方式。
(2)电源采用4节7号电池来提供电源,并用一个二极管(IN4148)进行降压。
(3)调制部分:采用CD40106进行缓冲放大并整形.发送的数字信号与38K的载波进行相与,将其调制在一起,整形并缓冲放大,经过8050进行放大驱动红外发射管,使其发射红外光。
(4)红外发射方原理见图(1)所示。
(图 1 )遥控器原理框图
2.红外发射
(1)发射部分包括键盘矩阵、编码调制、红外发送器。使用89C2051芯片 将按键信号调制在 38KHz 的载波信号上通过三极管放大后发射出去。红外编码为: 全码 =引导码+系统码+系统反码+数据码+数据反码。89C2051 的 P1口构成矩阵式键盘,用T1产生定时中断,驱动P3.3产生一个38K的方波,作为红外线的调制基波。将发送的数据和P3.0进行逻辑与后,经过40106整形,用三极管驱动红外发射管发射。
(2)按键功能
K1:低档、中档、高档;键值为 01H
K2彩灯:键值为 02H
K3:自然风、睡眠风、正常风键;值为03H
K4定时;键值为04H
K5开/关机;键值为05H
(3)当无键按下时,延时10秒后进入待机状态,系统处于低功耗模式。 当有按键按下时,INT0中断产生中断,同时唤醒CPU进行工作状态。
3.红外发射的编码方式
遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广泛,解码比较容易的一类来加以说明,现以日本 NEC的uPD6121G组成发射电路为例说明编码原理。当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特征:
(1)采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”。
“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。然后再通过红外发射二极管发射。
(2)遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。该芯片的用户识别码固定为十六进制0FFH;后16位为8位操作码(功能码)及其反码。
(3)遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108ms。一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在45~63ms之间。
(4)其相关的波形图如下:
(图 2)遥控编码
4.硬件设计
硬件设计见电路原理图(3)所示。
(图3)遥控器电路原理图
5.软件设计
(1)采用中断的处理程序完成整个系统的操作,INT0中断处理完成键盘扫描以及发送。
(2)程序流程图:
(图 4)遥控器软件流程图
二、 电风扇控制板
1.工作原理及组成部分: 红外接收部分包括光电转换放大器、解调、解码电路。
(1)CPU板将单片机、控制、键盘组合在一起完成了人机对话。 用 AT89C51单片机来作主芯片控制,采用红外T1838接收头,用双向可控硅MC97A6控制电机档位,具有红外遥控功能。
(2)电源部分:交流220V经变压器降压为2×8V,全波整流后再由三端稳压器LM7805稳压,供给控制板。
(3) 电风扇控制板框图
(图 5 )电风扇控制板框图
2.设计方案
(1)控制部分
(图 6)电机引线图
K1:低、中、高档,相应的指示灯亮。参见(图6)
K2:控制彩灯,相应的指示灯亮
K3:自然风、睡眠
- 红外线遥控器软件解码原理和程序(C语言)(12-03)
- 基于51单片机的红外线遥控程序编写代码(11-30)
- 红外线遥控码单片机测试程序(11-29)
- 基于51红外线遥控解码人流量统计系统设计基底(11-29)
- 单片机红外线遥控器解码程序(12-06)
- 模拟电风扇控制系统设计(11-25)