基于AT89C52单片机的遥控电扇

发布者:GoldenDream最新更新时间:2012-06-19 来源: 电子设计工程 关键字:单片机  红外发送  红外接收  DA变换 手机看文章 扫描二维码
随时随地手机看文章

    传统电风扇多采用机械方式进行控制,功能少,噪音大,各档的风速变化大。随着科技的发展和人们生活水平的提高,家用电器产品趋向于自动化、智能化、环保化和人性化,使得由微机控制的智能电风扇得以出现。随着电子制造业的不断发展,社会对生产率的要求越来越高,各行业都需要精良高效、高可靠性的设备来满足要求。作为一种老式家电,电风扇具有价格便宜、摆放方便、体积轻巧等特点。由于大部分家庭消费水平的限制,电风扇作为一个成熟的家电行业的一员,在中小城市以及乡村将来一段时间内仍然会占有市场的大部分份额,但电风扇功能简单,不能满足智能化的要求。本文利用了单片机的红外控制功能,对电扇的控制结构进行了重新的设计,使得人在距离电扇10 m范围内就可以短程控制电扇,使得人不用走近电扇即可对电扇的风速进行调控,方便,实用,具有广阔的市场前景。

1 系统功能简介
    传统的电扇都是由机械按键来控制电扇的启停,本设计采用红外遥控进行控制,由一单片机作为发射电路的主控部分,根据传统的机械按键也设计了4个按键控制,分别是关闭,小风速,中档风速,高风速。用户可以在夏天的时候,坐在沙发上,就可以完成电扇的打开,关闭,高速,低速的调节。

2 系统结构
    该设计的系统的框图如图1所示。

a.jpg


    由图1我们可以看到该设计一共由6大模块构成,其中2个单片机AT89C52模块是相同的,他们分别是单片机的最小系统,具有单片机的最基本的启动和复位功能,其中按键部分完成按键功能,将0或者1的电平送给单片机进行处理,至于红外发送模块,功能就是把单片机编制好的红外编码发送出去,红外接收模块仅仅完成接收工作。后面的单片机模块完成对红外脉冲的解码,由不同的编码完成对电机的控制,也就相当于对电扇进行控制了。

3 系统硬件设计
3.1 遥控发射电路设计
    如图2所示,该图为红外遥控发射电路图。
    在图2中,单片机采用AT89C52,这是遥控电路的主芯片。ATMEL公司生产的AT89C52单片机采用高性能的静态80C51设计,并采用先进工艺制造,还带有非易失性的Flash程序存储器,它是一种高性能、低功耗的8位CMOS微处理芯片,市场应用最多。其主要性能特点如下:
    *8 kB Flash ROM,可以擦除1 000次以上,数据保存10年。
    *256字节内部RAM。
    *电源控制模式:1)时钟可停止恢复2)空闲模式3)掉电模式。
    *6个中断源。
    *4个中断优先级。
    *4个8位I/O口。
    *全双工增强型UART。
    *3个16位定时/计数器:T0,T1(标准80C51)和增加的T2(捕获和比较)。

[page]

    *全静态工作方式:0~24 MHz。

b.jpg


    在单片机的右半部分,接有4个按键分别是S2,S3,S4,S5与单片机的P0口的0到3号端口相连。P0口在用作输入的时候,必须接有上拉电阻。在单片机的左半部分是最小系统模块和红外发射部分,遥控器的信息码由AT89C52单片机的定时器1中断产生40 kHz红外线方波信号,由P3.5口输出,经过三极管9013放大,由红外线发射管发送。改变电阻R3的大小可以改变发射距离。
3.2 红外遥控接收电路设计
    如图3所示,该图为红外遥控接收电路图。
    如图3所示,单片机的左半部分是万能红外接收头IR1838,其管脚1为输出,管脚2,3分别是接地和电源的输入,电源电压仍然为5 V,左半部分的单片机的最小系统完成的是单片机的复位功能和启停,右半部分电路是由一个DAC0808芯片构成,该芯片输出与一个放大器相连,通过放大后将电压加在直流电机的两端,从而驱动了电机的工作。关于DAC0808它的主要参数为,误差最大,快速建立时间为150 ns,高速输入乘以转换率为:8 mA/μs,电源电压为±4.5~±18 V到,该芯片为低功耗的,最大功耗为33 mW。该DAC是8位的,也就意味着输入的范围为0到255,输出的电压从0~10 V变化的,这样最小精度为10/255 V,但是经过一个集成放大器后,也就能驱动一个小小的电动机了。

4 系统软件设计
4.1 红外发射和接收原理
    先讲一讲什么是红外线。我们知道,人的眼睛能看到的可见光按波长从长到短排列,依次为红、橙、黄、绿、青、蓝、紫。其中红光的波长范围为0.62~0.76μm;紫光的波长范围为0.38~O.46μm。比紫光波长还短的光叫紫外线,比红光波长还长的光叫红外线。红外线遥控就是利用波长为0.76~1.5μm之间的近红外线来传送控制信号的。
    常用的红外遥控系统一般分发射和接收2个部分。发射部分的主要元件为红外发光二极管。它实际上是一只特殊的发光二极管,由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。目前大量使用的红外发光二极管发出的红外线波长为940 nm左右,外形与普通发光二极管相同,只是颜色不同。红外发光二极管一般有黑色、深蓝、透明3种颜色。判断红外发光二极管好坏的办法与判断普通二极管一样:用万用表电阻挡量一下红外发光二极管的正、反向电阻即可。红外发光二极管的发光效率要用专门的仪器才能精确测定,而业余条件下只能用拉距法来粗略判定。
    接收部分的红外接收管是一种光敏二极管。在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。红外接收二极管一般有圆形和方形两种。
    由于红外发光二极管的发射功率一般都较小(100 mW左右),所以红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路。前些年常用μPC1373H、CX20106A等红外接收专用放大电路。最近几年不论是业余制作还是正式产品,大多都采用成品红外接收头。成品红外接收头的封装大致有两种:一种采用铁皮屏蔽;一种是塑料封装。均有3只引脚,即电源正(VDD)、电源(GND)和数据输出(VO或OUT)。红外接收头的引脚排列因型号不同而不尽相同,可参考厂家的使用说明。成品红外接收头的优点是不需要复杂的调试和外壳屏蔽,使用起来如同一只三极管.非常方便。但在使用时注意成品红外接收头的载波频率。红外遥控常用的载波频率为38 kHz,这是由发射端所使用的455 kHz晶振来决定的。在发射端要对晶振进行整数分频,分频系数一般取12,所以455 kHz÷12≈37.9kHz≈38kHz。也有一些遥控系统采用36kHz、40 kHz、56 kHz等,一般由发射端晶振的振荡频率来决定。在本系统的中采用的是40 kHz的红外发射波,接收装置采用的是万能红外接收头IR1838。

[page]

4.2 遥控码的编码格式
    遥控码采用脉冲,不同的脉冲个数代表不同的码,最小为2个脉冲,最大为17个脉冲。
    为了使接收可靠,第一位码宽为3 ms,其余为1 ms,遥控码数据帧间隔大于10 ms,其编码波形如图4所示。

c.jpg


    如图4所示,当某个操作键按下时,单片机先读出键值,然后根据键值设定遥控码的脉冲个数,再调制成40 kHz的方波由红外线发射管发射出去。在上述的发射电路中,一共设置了4个按键,其中S2,S3,S4,S5的编码分别是电器码2,3,4,5,对于发射电路,每发送一个数据帧最短的时间间隔是10 ms。例如在按下S4时,即先发送3 ms的前导码,随后再发送5个1 ms的脉冲,就表示按键S4被按下了,单片机红外接收电路在接收到一串串脉冲之后,通过软件完成对红外的解码,通过设置,每个编码对应于电动机不同的操作,比如2这个编码,那么单片机的P0口输出00000000,再经过DAC0808之后,输出电压为0,这样电动机就可以停止工作了。类似的编码3,4,5分别对应直流电机的低速,中速和高速的操作。
4.3 单片机红外发送和接收程序
    由于程序较长,所以在本设计中只给出部分的核心的红外发送和接收程序。关于红外的发送程序如下:
d.jpg
e.jpg[page]

    如上面程序所示发送函数是固定不变的,在发送函数中完成了编码的功能,在tx函数中,用到了一个swicch开关语句,分别对按键值的不同进行处理,例如当keyvol=2的时候,就发送3个脉冲信号。
    关于单片机的红外接收解码过程,其核心程序如下:
f.jpg
    由面的解码程序可以知道,用到了一个中断接收的程序,其中remotein为临时变量,解码时的关键在于对脉冲个数的计量,这样keyvol的值就能很方便的读出来,再用到一个switch语句就可以分别对风速进行控制了。

5 结束语
    红外遥控的特点是不影响周边环境,不干扰其它电器设备。由于其无法穿透墙壁,故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰;电路调试简单,只要按给定电路连接无误,一般不需任何调试即可投入工作;编解码容易,可进行多路遥控。由于各生产厂家生产了大量红外遥控专用集成电路,需要时按图索骥即可。因此,现在红外遥控在家用电器、室内近距离(小于10 m)遥控中得到了广泛的应用。
    在本设计中,利用2个单片机就可以实现短距离的控制,实际上其本质就是利用红外进行通信,并把通信的结果进行处理,反馈到最终的形式就是电扇风速的不同。另外本设计还可以进行改进的,比如我们在考虑单片机的功耗时,因为用于红外接收的那个单片机在风扇停止工作的时候,单片机如果仍在工作,那么势必增加了系统的功耗,所以为了降低功耗,在用于红外接收的那个单片机中,应该添加一个待机模式,这样就大大降低了功耗,节省了能源,当有外部中断来的时候,才唤醒单片机,让它处于工作状态,这样就达到低功耗的目的了。此外,若能在接收端加上一个测温系统,并把实时温度显示出来,用户根据目前环境的温度来对电扇进行操作,那就更好了。
    经Proteus电路仿真验证后,该系统运行良好,单片机的遥控电扇工作起来可靠性较高,用户可以在几米远的地方,就可以对电扇进行实时控制了。该系统成本低廉,操作简单,随时可以根据软件编写新的功能。操作按键可扩展性强,只要稍加改变,就可以增加几个按键的功能,本系统在当今提倡人性化设计和健康产品的环境下具有非常好的市场前景。

关键字:单片机  红外发送  红外接收  DA变换 引用地址:基于AT89C52单片机的遥控电扇

上一篇:制作单片机恒温箱的温控系统的方法解析
下一篇:单片机的存储器 寄存器概述

推荐阅读最新更新时间:2024-03-16 13:01

MSP430FW427无磁水表设计方案详解
  1. MSP430FW42x单片机介绍   MSP430FW42x系列单片机是TI公司针对电子式流量与旋转运动检测最新开发的专用MCU芯片,它将超低功耗MCU、旋转扫描接口 (SCAN IF)和液晶显示LCD驱动模块完美地结合在一起。该器件的超低功耗结构和流量检测模块不仅延长了电池的寿命,同时还提高了仪表的精度与性能。 MSP430FW42x的典型应用包括热量仪表、热水和冷水仪表、气体仪表和工业流量计、风力计以及其他旋转检测应用。   2. 流量测量的原理   2.1 基本原理   一个由叶轮或螺旋齿轮构成的机械装置把流体流动转换为转动,这种转换能够实现对流体流量的测量。   把一个谐振回路中的电感置于叶轮的上方可以
[单片机]
MSP430FW427无磁水表设计方案详解
AVR单片机汇编器的部分伪指令详解
伪指令不属于单片机的指令系统,而是由汇编器提供的指令,用于调整存储器中程序的位置、定义宏、初始化存储器等。AVR单片机的汇编器共提供18条伪指令(见附表)。 其中,ORG、DB、DW、EQU读者比较熟悉,这里不再赘述。下面对部分伪指令加以说明。 BYTE-保存单字节数据到SRAM中。BYTE伪指令仅用在数据存储器。为提供数据保存的位置,在BYTE前应有标号。在由CSEG、ESEG定义的代码段和E2PROM段中不能使用BYTE伪指令。 格式LABEL:.BYTE表达式 CSEG-定义程序存储器代码段的起始位置一个汇编文件可以包括若干个代码段,汇编时这些代码段被连成一个代码段。在代码段中不能使用BYTE伪指令。 格式.CS
[单片机]
AVR<font color='red'>单片机</font>汇编器的部分伪指令详解
瑞萨奏响中国“战略进行曲” 三管齐下推动销售额倍增
兼重销售设计与制造 产能将大幅提升 2007年8月7日,株式会社瑞萨科技在北京发布了新的中国战略,期望到2010财年之前在中国的销售额能够增长100%,并且MCU、TV用LSI和汽车半导体等重点领域的产品市场份额同步扩大100%。瑞萨希望通过与中国的合作伙伴合作,研发适合中国市场的产品,使本地业务得到更快发展。未来,瑞萨不仅期望销售额能够大幅增长,并且计划大幅度提升在中国工厂的设计能力和产能,产能目标是在五年之内提升到目前的3倍。此外,瑞萨一直致力于与中国的高校合作,如在中国数所大学中设置“MCU课程”、赞助中国教育部举办“2007瑞萨超级MCU模型车大赛”等。瑞萨半导体管理(中国)有限公司董事长、总裁山村雅宏先生就新发布的战略
[焦点新闻]
51单片机-定时时长的作法
1.“水量”的确定 我们已经懂得怎么选用“试管”了,如何装多大的“水量”来决定定时的时长呢。首先我们先拿“大试管”来说,定时器0有两个寄存器分别是TH0和TL0,大家再次粗浅的把TH0和TL0认为是两个8位的变量先吧。因为我们用的是“大试管”,这两个8位的变量相当于组合成了16位的变量,TH0是高8位(H:High),TL0是低8位(L:Low)。假如此时再过一个刻度的时间就溢出, 那么此时会有“TH0等于255”,“TL0等于255”,因为二进制的1111111111111111等于十进制的65535。65535再加1就溢出嘛。 可是我们还不知道增加一个刻度的水花费的时间是多少。 这里笔者直接告诉答案给大家,因为我
[单片机]
51<font color='red'>单片机</font>-定时时长的作法
51单片机学习——中断
1、中断源及其中断标志 外部中断0:中断号为0;中断标志为IE0;中断服务程序入口为0003H; 定时器0:中断号为1;中断标志为TF0;中断服务程序入口为000BH; 外部中断1:中断号为2;中断标志为IE1;中断服务程序入口为0013H; 定时器1:中断号为3;中断标志为TF1;中断服务程序入口为001BH; 串行口:中断号为4;中断标志为R1或T1;中断服务程序入口为0023H; 2、中断允许控制 CPU对中断系统所有中断及其某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。IE的状态可通过程序由软件设定。某位设定为1,相应的中断源中断允许;某位设定为0,相应的中断源中断屏蔽。CPU复位时,IE各位清0,禁止所有中断。
[单片机]
恩智浦在LPC800系列微控制器中集成NFC技术
恩智浦半导体公司(纳斯达克代码:NXPI)今日宣布推出全新LPC8N04 MCU。LPC8N04 MCU是快速扩展的32位MCU LPC800系列(基于ARM® Cortex®-M0+)的最新产品。LPC8N04 MCU经过优化,集成具有能量收集功能的近场通信(NFC)接口,可满足市场对经济高效、短距离双向无线通信日益增长的需求。 随着NFC读卡器技术的飞速发展和当今智能手机丰富的图形显示能力,结合基于iOS和Android应用程序的开放式开发人员生态系统,NFC技术的使用已经超出了最初的点即付构想。LPC8N04 MCU使开发人员能够快速实施广泛的解决方案,利用系统诊断或环境条件实现更智能的标记体验。凭借灵活通信模式的附加优
[物联网]
一种用单片机控制的光谱数据采集系统
摘要:介绍利用单片机和A/D器件MAX120等构成的光谱信号采集系统,由单片机控制A/D产生不同的采样频率,用于光电倍增管和CCD输出的光谱信号的采集。 关键词:单片机 A/D 信号采集 光谱 概述 在光谱测量中,常用光电倍增管(PMT)和电荷耦合器件(CCD)作为光电转换器。在慢变化、高精度光谱测量中使用PMT;对于闪光灯、荧光和磷光等强度随时间变化时的光谱信号则采用CCD。PMT和CCD输出的信号形式是不同的:光电倍增管输出的是连续的模拟信号;CCD输出的是视频脉冲信号。由于输出信号的不同,相应的信号采集电路也不尽相同。本文所述的系统通过设定控制开关的不同状态,由单片机检测、判断和执行相应的操作,完成对不同形式输入信号
[应用]
Philips推出高速USB微控制器系列产品
Philips公司日前推出基于ARM的高速USB微控制器系列LPC2800系列。LPC2800是首个能提供有最大标准兼容和片内高速480Mbps收发器(PHY)的USB2.0器件,同时是首个用单颗电池工作的器件。这种独特的性能允许嵌入系统设计工程师能在产品中增加新的功能如PC外设,SD存储器卡,智能卡阅读器和其它以电池为能源的USB设备。 LPC2800系列集成了许多其它高性能的外设特性,它简化了系统设计,包括1MB闪存和8KB缓存,使外接存储器能有效地工作,它的带PGA的Sigma-Delta 16位ADC能提高分辨率,LPC2800能用单节AA 1.5V电池供电,或使用USB电缆,或外接电源工作,从而最大化电池寿命和设计灵活
[新品]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved