单片机遥控系统应用设计15_第1页
单片机遥控系统应用设计15_第2页
单片机遥控系统应用设计15_第3页
单片机遥控系统应用设计15_第4页
单片机遥控系统应用设计15_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘要遥控器是一种用于远端控制机械的装置,采用单片机进行遥控系统的应用设计, 具有硬件接口的简单方便,编程灵活多样,操作码个数可随意设定等优点。本设计遥 控发射电路主要有单片机 AT89C52控制电路、行列式操作键盘、红外线发射、遥控 接收电路构成。通过单片机软件解码实现对一个电灯的调光,以及对继电器的控制功能。本设计的红外遥控系统具有节能和环保的特点,有家庭或工业控制现场。一些手 动操作不太方便的场合可以通过设置代替手动操作,利用该遥控器控制其他设遥控功 能的电路。如电灯、计算机、电脑、饮水机等,可极大方便人们生活。关键字:单片机;红外线发射器;遥控接收器目录摘要L.第1章绪论1第2章功能要求

2、1第3章方案论证2第4章系统硬件电路的设计34.1 遥控发射器的电路设计 34.2 遥控接收系统的电路设计5第5章系统程序的设计.105.1 系统功能的实现方法 105.2 遥控发射及接收控制程序设计流程图 11第6章 调试及性能分析 .126.1 调试126.2 性能指标13第7章控制源程序清单.13第8章总结22参考文献22致谢23第1章绪论随着计算机的不断发展,它的一个重要分支一一单片机的应用正在不断地走向深 入,现在单片机越来越广泛地用于智能仪表、工业控制、日常生活等许多领域。随着 移动通信设备的日益普及,红外线遥控已成为目前广泛使用的一种通信和遥控手段, 许多电器装置上纷纷采用红外线

3、遥控, 给人们的工作,生活带来了方便。因此进行基 于单片机的红外线遥控设计有着十分重要的现实意义。 论文结合当前红外钱遥控的技 术和单片机的应用技术,研究设计了一个基于单片机的红外遥控电脑系统, 实现了红 外线遥控电脑的基本功能。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管 理及过程控制等领域,单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化 和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电 压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力 等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,

4、且功能比 起采用电子或数字电路更加强大。第2章功能要求单片机遥控应用系统要求用单片机作为控制芯片制作一个遥控器, 另一个单片机 控制系统能被遥控操作,本单片机制作十五路电器遥控器,可以分别控制十五个电器 的电源开关,并且可对一路电灯进行亮度的遥控。采用脉冲个数编码, 4X8键盘开 关,可扩充到对32个电器的控制。第3章方案论证目前市场上一般设备系统采用专用的遥控编码及解码集成电路。此方案具有制作简单容易等特点,但由于功能键数及功能受到特定的限制, 只适合用于某一专用电器 产品的应用,应用范围受到限止。而采用单片机进行遥控系统的应用设计,具有编程灵活多样、操作码个数可随意设定等优点。本单片机遥控

5、应用系统采用红外线脉冲个 数编码、单片机软件解码实现了对十五个小灯的开关控制,其中一路为一个交流电灯 可以进行亮度的遥控。图3.1和图3.2为该应用系统的遥控器设计原理框图及接收 控制系统设计原理框图。图3.1单片机遥控器设计原理框图图3.2接收控制系统设计原理框图第4章系统硬件电路的设计单片机遥控应用系统电路分遥控发射器电路和遥控接收系统电路。4.1 遥控发射器的电路设计图4.1.1为该系统遥控发射器的电路原理图,其中P 1 和P0 作键扫描端口, 具有32个功能操作键。第(9)脚为单片机的复位脚,采用简单的 RC上电复位电 路,(15)脚作为红外线遥控码的输出口,用于输出 40KHz载波编

6、码。(18)、 (19)脚接12M晶振。P0 需接上拉电阻。Ti TsnTi4电器开关键盘接口P1.0 Pl 1 PL2 Pl,3 Pl 4 Pl 5 Pl 6 PIT RST10PXD11TXD unnfo14 To 15T1 16WK nKF 18XTAL2 15XTAL1 20Vss¥cc PO 0 PC.l PO 2 P0.3 P04 F0.5 P06 PO 7TT ALEP2.5 P2 4 P2.3 P2 2 F2 1+5V10K100UF0 01UF313QP2.0 21图4.1.1遥控发射器电原理图1 AT89C52单片机遥控电路的主芯片采用美国 ATMEL公司的AT8

7、9C52 FLASH 单片机,它具有 8K字节可重编程闪速存储器,使用 5V电源电压、256 X 8位的内部RAM , 3个16 位定时器/计数器,7个中断源以及空闲和掉电方式等功能。遥控器如用 AT89C52 中的LV低电压系列,可用2节1.5V电池供电。2行列式操作键盘行列式操作键盘又称为矩阵式键盘。用 I/O 线组成行、列结构,按键设置在行 列的交点上,行列线分别连接到按键开关的两端, 键盘中有无按键按下是由列线送入 扫描字、行线读入行线状态来判断的,有键按下时通过查键并执行键功能程序。3红外线发射电路遥控器信息码由AT89C52单片机的定时器1中断产生40KHz红外线方波信 号,由P3

8、.5 口输出,经过三极管9013放大,由红外线发射管发送。电阻 R1的大 小可以改变发射距离。4.2 遥控接收系统的电路设计图4.2.1为该遥控系统的接收器主电路原理图,控制系统主要由AT89C52单片机、+5V电源电路、红外接收电路、50HZ交流电过零检测电路、电灯亮灭及调 光控制电路等组成。遥控器发射的红外信号经红外接收处理传送给单片机,单片机根据不同的信息码进行对十五个端口的控制操作。 其中P1.1 -P1.2作为数码管的二进 制数据输出,显示数字为07, 7代表最亮,0代表最暗,采用4511集成块硬件 译码显示数值。P0.0 -P0.7以及P2.0 -P2.6作为15个电器的电源控制输

9、出,接 口可以用继电器或可控硅,在本电路中,P2.0 口控制一个电灯的亮灭。P2.7为可控 硅调光灯的调光脉冲输出。第10脚P3.0 口为50HZ交流市电相位基准输入,第(12) 脚为中断输入口,P3.1用于接收红外遥控码输入信号。共豳眄削+5%部等级街)口号II470BI45111 PLO2P1.1Vcc 40匚 3 P1,2TL ccALElOuf HFr 8.2kg红外触ffl12H3卿ccF c-cE4 Pl,3 5 Pl,4 BPI,5I Pl.68 PIT9KST10F3,O 11F3_1 12®o 1而14To 15H 砸 1IM 18mL 2 iimn20hiPO.O

10、 39P0.131P0.2 3?F0.3 36F0.4 35P0.5 34 m 33 POI32EA 31ALE_30PSEB29P2J 21P2.6 21P2.5 26P2.4 25P2.3 24 m 23 ?2.122P2.0 21+5V- -:=+5Y>451101)口10k5V 1H!*9012 r-觥控制10k控制仃版灰22图4.2.3交流电过零检测电路图图4.2.1十五路电器控制器电原理图1.电源电路电源电路由桥式整流、虑波电容、7805稳压器及电源指示灯组成。交流电经过 桥式整流变成直流电,再经过电容滤波,7805集成稳压器稳压成为稳定的+5V电 源,用一个发光二极管指示灯

11、指示电源状态,图 4.2.2为电源电路图。U 7SUH CH图4.2.2控制器电源电路图。2. 50HZ 交流电过零检测电路交流电过零检测电路如图4.2.3所示。P3.0过零检测电路由桥式整流电路和 2个9013三极管组成。当Ua=U be>=0.7V 时,T1三极管导通,T2三极管截止,B点为低电平,C点(P3.0)为高电平;当 Ua=Ube<0.7V 时,T1三极管截止,T2三极管导通,B点变高电平,C点(P3.0 ) 为低电平。50HZ交流电过零检测电路图中各点电压波形如图4.2.4所示。B点C点 P3.0图4.2.4交流电过零检测电路图中各点电压波形图3.电灯开关及亮度控制

12、电路图4.2.5为可控硅光亮控制电路设计原理图。电灯的开关受P2.0 口控制,也可 由可控硅的导通角控制。AT89C52产生可控硅控制的移相脉冲,移相角的改变实现 导通角的改变,即当移相角较大时,可控硅的导通角较小,输出电压较低,电灯较暗; 当移相角较小时,可控硅的导通角较大,输出电压较高,电灯较亮。120K D+5V 光电耦合0图4.2.5可控硅光亮控制电路图当AT89C52的P2.7位低电平时,9012三极管导通,三极管集电极电流驱动 光电耦合器导通,使可控硅的 G极产生脉冲信号触发可控硅导通;当 AT89C52的 P2.7位高电平时,9012三极管、光电耦合器、可控硅都处于截止状态。可控

13、硅导 通角控制电路中各点波形如图4.2.6所示。图4.2.6可控硅导通角控制电路中各点波形图第5章系统程序的设计5.1 系统功能的实现方法(1)遥控码的编码格式遥控采用脉冲个数编码,不同的脉冲个数代表不同的码。最小为 2个脉冲,最 大为17个脉冲。为了使接收可靠,第一位码宽为 3mS ,其余为1mS ,遥控码数据 帧间隔大于10mS (图5.1.1 )。调光命令码图5.1.1 P3.5 端口输出编码波形图(2)遥控码的发射当某个操作按键按下时,单片机先读出键值,然后根据键值设定遥控码的脉冲个 数,再调制成40KHz方波由红外线发光管发射出去。P3.5端口的输出调制波如图 8.10 。(3)数据

14、帧的接收处理当红外线接收器输出脉冲帧数据时, 第一位码的低电平将启动中断程序,实时接 收数据帧。在数据帧接收时,将对第一位(起始位)码的码宽进行验证,若第一位低 电平码的脉宽小于2mS ,将作为错误码处理,当间隔位的高电平脉宽大于 3mS时,结束接收,然后根据累加器 A中的脉冲个数,执行相应输出口的操作。图 5.1.2为 红外线接收器输出的一帧遥控码波形。3ms- H叼 *-1mst10ms*-1 停止位一图5.1.2红外线接收器输出的一帧遥控码波形图5. 2遥控发射及接收控制程序设计流程图图5.2.1遥控发射器主程序、键扫程序、遥控码发射程序流程图中断开始-低电平肺宽接收并对低电平脉冲计数按

15、脉冲个数至对应功能程序中新返回“图5.2.2 遥控接收器主程序、中断程序流程图第6章调试及性能分析6.1 调试系统在完成硬件的检查后主要进行软件的调试,对遥控器的调试主要是用示波器 观察能否在遥控接收器中输出图 8.11所示的波形,另外调整发射电阻的大小可以改 变红外线发射的作用距离。电灯亮度控制系统的调试主要是对可控硅延时时间的调 整,电灯按0-7共八档进行亮度的调整,控制延时经调试后确定如下:最最暗时的移相角控制延时:256仙SX 26H=9728仙S最暗移相角控制延时:256仙SX 1CH=7168i S次暗移相角控制延时:256仙SX 19H=6400仙S中间亮移相角控制延时:256仙

16、SX 16H=5632仙S次亮移相角控制延时:256仙SX 12H=4608仙S最亮移相角控制延时:256卜SX 0EH=3584i S遥控接收头在安装时应注意尽量靠表面,以扩大接收的角度,不同厂家的遥控接收头的灵敏度也不一致,应选择确定。6.2 性能指标调试后系统性能指标测试如下:1 .最大遥控距离:10米2 .发射接收角:水平最大90度3 .遥控器发射时工作电流:8 mA4 .遥控器静态电流:0.6 mA5 .电灯最亮电压:交流200V6 .电灯最暗电压:交流10V采用红外线遥控方式时,距离、角度等使用效果受一定的限制,如果采用调频或 调幅发射接收,则发射距离会更远,接收将不受角度的影响。

17、本单片机遥控编码及解 码方案适合一切需要应用到遥控的电器系统,是自行设计带遥控功能的控制系统首选理想方案。第7章控制源程序清单以下是遥控器及接收系统单片机控制C源程序清单:I*/send.c/遥控发射器/LRM 2004.10.22I*/使用AT89C52单片机,12MHz晶振,/#pragma src(E:remote.asm)#include "reg51.h"#include "intrins.h"nop_();延时函数用/#define uchar unsigned char#define uint unsigned int#define key

18、0 P0键歹 U 线#define keyl P1键行线/sbit remoteout=P3八5;遥控输出口/uint i,j,m,n,k,s;uchar keyvol;键值存放uchar code keyv8=1,2,4,8,16,32,64,128;/尸*1毫秒延时程序*/delay1ms(uint t)for(i=0;i<t;i+)for(j=0;j<120;j+)5/*初始化函数 */clearmen()关遥控输出/8位自动重装模式/40KHZ 初值remoteout=0;IE=0x00;IP=0x01;TMOD=0x22;TH1=0xf3;TL1=0xf3;EA=1;开总

19、中断/*发射函数 */sed()ET1=1;TR1=1;delay1ms(3);ET1=0;TR1=0;remoteout=0;40KHz 发 3 毫秒for(m=keyvol;m>0;m-)delaylms(l);停 1 毫秒ET1=1;TR1=1;delay1ms(1);ET1=0;TR1=0;remoteout=0;40KHz 发 1 毫秒delay1ms(10);/tx()switch(keyvol)case 0:keyvol=keyvol+1;sed();break;case 1:keyvol=keyvol+1;sed();break;case 2:keyvol=keyvol+

20、1;sed();break;case 3:keyvol=keyvol+1;sed();break;case 4:keyvol=keyvol+1;sed();break;case 5:keyvol=keyvol+1;sed();break;case 6:keyvol=keyvol+1;sed();break;case 7:keyvol=keyvol+1;sed();break;case 8:keyvol=keyvol+1;sed();break;case 9:keyvol=keyvol+1;sed();break;case 10:keyvol=keyvol+1;sed();break;case

21、11:keyvol=keyvol+1;sed();break;case 12:keyvol=keyvol+1;sed();break;case 13:keyvol=keyvol+1;sed();break;case 14:keyvol=keyvol+1;sed();break;case 15:keyvol=keyvol+1;sed();break; defaultbreak;/I*键功能函数 */keywork()keyvol=0x00;key1=0xf0;if(key0!=0xff)delay1ms(20);if(key0!=0xff)while(key0!=0xff);key1=0xfe;

22、if(key0!=0xff)for(i=0;i<8;i+)if(keyO=keyvi)keyvo l=i;tx();elsekey1=0xfd;if(key0!=0xff)for(i=0;i<8;i+)if(keyO=keyvi) keyvol=i+8;tx(); / key1=0xfb;if(key0!=0xff)for(i=0;i<8;i+)if(keyO=keyvi)keyvol=i+16;tx();/key1=0xf7;if(key0!=0xff)for(i=0;i<8;i+)if(keyO=keyvi)keyvol=i+24;tx(); /*主函数 *main

23、()clearmen();初始化while(1)keywork(); 按键扫描/*40KHZ发生器 *定时中断T1void time_intt1(void) interrupt 3remoteout=remoteout;/*结束*/*/incept.c/遥控接收处理器/LRM 2004.10.22/*使用AT89C52单片机,12MHz晶振,/#pragma src(E:remote.asm)#include "reg51.h"#include "intrins.h"nop_();延时函数用/#define uchar unsigned char#def

24、ine uint unsigned int#define disout P1显示输出/遥控输入基准正弦波相位输入/sbit remotein=P3A1;sbit sin=P3A0;sbit AA=P0A0;sbit BB=P0A1;sbit CC=P0A2;sbit DD=P0A3;sbit EE=P0A4;sbit FF=P0A5;sbit GG=P0A6;sbit HH=P0A7;sbit II=P2A0;sbit JJ=P2A1;sbit KK=P2A2;sbit LL=P2A3;sbit MM=P2A4;sbit NN=P2A5;sbit PP=P2A6;sbit QQQ=P2A7;/

25、uint i,j,m,n,k,s=1;uint keyvol;/值存放/*1毫秒延时程序 */delay1ms(uint t)for(i=0;i<t;i+)for(j=0;j<120;j+)5/*初始化函数*/clearmen()EX0=1;开总中断EA=1;/ / /*函数*/100Poswitch(disout&0x07)case 0:s=1;break;case 1:s=2;break;case 2:s=3;break;case 3:s=4;break; case 4:s=5;break; case 5:s=6;break;case 6:s=7;break; case

26、 7:s=8;break; default:break; /尸* 主函数 *main()初始化 clearmen(); 100P();P2=0xfe;whi1e(1)while(sin=1);delaylms(s);QQQ=0;delay1ms(1);QQQ=1;/*外中断遥控接收函数 */外中断0void inttO(void) interrupt 0 EX0=0;keyvol=0;if(remotein=0)delay1ms(1);if(remotein=0)while(1)while(remotein=0);keyvol+;k=0;while(remotein=1)delay1ms(1)

27、;k+;if(k>2) goto OOUUTT; OOUUTT: switch(keyvol) case 2:AA=AA;break; case 3:BB=BB;break; case 4:CC=CC;break; case 5:DD=DD;break; case 6:EE=EE;break; case 7:FF=FF;break; case 8:GG=GG;break; case 9:HH=HH;break; case 10:PP=PP;break; case 11:NN=NN;break; case 12:MM=MM;break; case 13:LL=LL;break; case 14:KK=KK;break; case 15:JJ=JJ;break; case 16:II=II;break;case 17:if(diso

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论