51单片机-毕业设计基于单片机设计的红外线遥控器
基于单片机的遥控器设计

本科毕业设计题目:基于AT89C51单片机的多功能红外遥控器设计题目:基于AT89C51单片机的多功能红外遥控器设计学生:高强学号:1202214062专业班级:12-电子信息班指导老师:王芳2016年3月25日基于单片机的红外遥控器设计摘要由于单片机具有集成度高、体积小、可靠性高、价格便宜等优点在机电一体化、工业控制、仪器仪表和家用电器等领域得到了广泛应用当前单片机对家用电器控制呈现出外形简单化、功能多样化、产品智能化的发展趋向。
红外遥控技术具有使用方便、功耗低、抗干扰能力强、价格便宜的特点,因此它的应用前景十分广阔。
本课题以延伸红外无线遥控技术为目的提出了一种红外遥控器集中控制的方案,核心是设计出一个红外多路遥控发射/接收系统。
本设计以红外线作为传递信息的载体可对 4 个受控对象的工作状态进行短距离无线控制,适用于遥控工业、医疗、家用电器等设备的开闭状态。
并含有设备计数模块可对处于工作状态的设备进行计数并显示出来。
课题的重点在于通过软件实现二进制数据的编码与解码工作然后通过红外收发头进行数据传输。
AbstractAs high integration, small size, high reliability and low price of the single chip .It has been widely applied on electrical integration, industrial control, instrumentation and household appliances. SCM(Single Chip Micyoco) control of household appliances develops towards simplified form, functional diversification, and intelligent currently. Infrared remote control technology has characteristics of easy to use, low power consumption, anti-interference ability and cheap, so its prospects are bright.The topics to extend the infrared wireless remote control technology for the purpose, a centralized control infrared remote control program, the core is to design a wireless infrared remote control multiple transmit / receive system. The design of an infrared transmission of information as a carrier of controlled object can work 8 state short-range wireless control for industrial, medical, home appliances and other equipment on or off remotely. It contains counting module equipment, and can count the equipment inworking condition , and displays. The focus of the task is achieving work of Binary data encoding and decoding by software, and then we had data transmitted with infrared transceiver.Key Words: Single ChipMicyoco;InfraredRemoteControl;Multipath;LED Optocoupler isolation; Keyboard control目录1引言2概述2.1基于单片机的红外遥控系统概述2.2本设计方案思路2.3研究方向和技术关键2.4主要技术指标3总体设计3.1红外遥控发射部分3.2红外遥控接收部分3.3红外编码标准4硬件设计4.1主控芯片AT89C514.2红外遥控发射电路4.3红外遥控接收电路4.4电源电路5软件设计5.1总体方案5.2编码发射程序设计6仿真与制作6.1系统仿真6.2硬件电路制作与软件下载6.3功能测试7结论8参考文献致1引言近年来随着计算机在社会各领域的渗透单片机的应用正在不断地走向深入同时也带动传统的控制、检测等工作日益更新。
基于单片机的电器遥控器毕业设计

基于单片机的电器遥控器毕业设计————————————————————————————————作者:————————————————————————————————日期:单片机设计论文姓名:李小飞学号: 1010111064系别:机械工程学院班级: 10机自2班授课老师:海深2013年5月12日机械工程系基于单片机的电器遥控器设计摘要:基于单片机的电器遥控器设计是在单片机应用的基础上进行设计的。
它联系了实际生活中的电器遥控器,通过控制电器遥控器,来对电灯的亮度进行控制.关键字:单片机,控制电路.方案一:(简易红外遥控电路)在不需要多路控制的应用场合,可以使用由常规集成电路组成的单通道红外遥控电路。
这种遥控电路不需要使用较贵的专用编译码器,因此成本较低。
红外发射部分图1.1考虑到本方案电路是简单的单通道遥控器,可直接产生一个控制功能的震荡频率,再通过红外发光二极管发射出去。
红外接收部分图1。
2当红外接收头接收到控制频率时,由一个电路对其进行解调并产生相应的控产生 震荡 频率红外 发射红外 接收解调 控制受控 电器制功能。
方案二:(利用红外遥控开关电路)红外线发射/接收控制电路均采用单片机来实现,输出控制方式可选择,实用性强。
方案结构图: 红外发射部分:图1。
3当按下遥控按钮时,单片机产生相应的控制脉冲,由红外发光二极管发射出去。
红外接收部分:图1.4单片机遥控 按钮红外发射单 片 机红外 接收控制方式选择开关受控 电器当红外接收器接收到控制脉冲后,由控制方式选择开关选择是“互锁”还是单路控制,再由单片机处理后,对相应的受控电器产生控制。
方案三:利用红外遥控开关电路用单片机制作一个红外电器遥控器,可以分别控制5个电器的电源开关,和一个电灯开关,并且可以对电灯进行亮度的调光控制。
红外发射部分结构图如下:图1.5当按下遥控按钮时,单片机产生相应的控制脉冲,由红外发光二极管发射出去.红外接收部分结构如下:单片 机按键 控制红外 发射单片机显示红外接收受控电器电源开关 调光电路电灯图1。
基于51单片机的红外遥控计算器程序(附电路图,注释详细)

/*************************基于51单片机的红外遥控计算器程序****************/ /****本程序用基于TC9012遥控器可直接操作,电路图,遥控器编码图在最后****/ #include<reg52.h>#include<stdio.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned char#define lint unsigned long intsbit IR=P3^2; //红外接口标志bit irpro_ok,irok;uchar irtime,X,mir,fir; //红外用全局变量uchar IRcord[4], irdata[33];uchar DA TA1[8]={0,0,0,0,0,0,0,0}; //第一个数uchar DA TA2[8]={0,0,0,0,0,0,0,0}; //第二个数uchar RESUIT[8]={0,0,0,0,0,0,0,0}; //结果uchar px1=0,px2=0,px3=0,flag=0,flag1=0,flag2=0,flag3=0,f1=0,f2=0,f3=0,f4=0; //各全局变量uchar temp,key,fang1,fang2;lint x1=0,x2=0,y=0; //输入的数及其结果void delay(msx); //ms延时函数void Init(); //系统初始化void INTInit(); //中断初始化void Ircordpro(); //红外码值处理函数void keyscan(); //键值检测void delay(uint); //延时void DataOper(); //数据运算void DataHandle(); //数据接收void DisplayHandle(); //显示处理void display(uchar,uchar); //数码管显示函数void main(){INTInit();P0=0x00;while(1){keyscan();DataHandle();DisplayHandle();}}void INTInit(){TMOD=0x02; //定时器0工作方式2,TH0是重装值,TL0是初值TH0=0x00; //reload valueTL0=0x00; //initial valueET0=1; //开中断TR0=1;IT0 = 1; // Configure interrupt 0 for falling edge on /INT0 (P3.2)EX0 = 1; // Enable EX0 InterruptEA = 1;}void Init() //初始化,所有数据归零{uchar i;px1=0;px2=0;px3=0;flag=0;flag1=0;flag2=0;flag3=0;f1=0;f2=0;f3=0;f4=0;x1=0;x2=0;y=0;for(i=0;i<8;i++){DA TA1[i]=0;DATA2[i]=0;RESUIT[i]=0;}}void delay(msx) //msx为延时毫秒数{uint i,j;for(i=0;i<=msx;i++)for(j=0;j<=110;j++);}void display(uchar n,uchar m) //n是第几只数码管,m是显示的数字是多少{P0=P0&0x80;P0=P0|(n<<4);P0=P0|m;}void tim0_isr (void) interrupt 1 using 1//定时器0中断服务函数{irtime++;}void ex0_isr (void) interrupt 0 using 0//外部中断0服务函数{if(fir){if(irtime<49&&irtime>=31)mir=0; //4.5ms+4.5msirdata[mir]=irtime;irtime=0;mir++;if(mir==33){irok=1;mir=0;fir=0;}}else{irtime=0;fir=1;}}void Ircordpro(void) //红外码值处理函数{unsigned char i, j, k;unsigned char cord,value;k=1;for(i=0;i<4;i++) //处理4个字节{for(j=1;j<=8;j++) //处理1个字节8位{cord=irdata[k];if(cord>7) value=value|0x80;else value=value;if(j<8)value=value>>1;k++;}IRcord[i]=value;value=0;}if((IRcord[0]=~IRcord[1])&&(IRcord[2]=~IRcord[3])) {X=IRcord[2];fang2=1;}}void keyscan() //矩阵键值扫描子函数{if(irok){Ircordpro();irok=0;fang1=1;}if((fang1==1)&&(fang2==1)){fang1=0;fang2=0;switch(X){case 0x08: key=0;flag=1;break;case 0x01: key=1;flag=1;break;case 0x02: key=2;flag=1;break;case 0x03: key=3;flag=1;break;case 0x05: key=4;flag=1;break;case 0x06: key=5;flag=1;break;case 0x07: key=6;flag=1;break;case 0x09: key=7;flag=1;break;case 0x0A: key=8; flag=1;break;case 0x0B: key=9; flag=1;break;case 0x10: key=10;flag1=1;display(7,0);break;case 0x1A: key=11;flag1=1;display(7,0);break;case 0x16: key=12;flag2=1;Init();break;case 0x11: key=13;flag2=1;DataOper();break;case 0x15: key=14;flag1=1;display(7,0);break;case 0x19: key=15;flag1=1;display(7,0);break;}}}void DataOper(){uchar i,j,m=0;lint k=0;for(i=0;i<(px1-1);i++) //把第一个数组中的数处理成十进制数{k=DATA1[i];for(j=0;j<(px1-i-1);j++){k=k*10;}x1=x1+k;}x1=x1+DATA1[px1-1];for(i=0;i<(px2-1);i++) //把第二个数组中的数处理成十进制数{k=DATA2[i];for(j=0;j<(px2-i-1);j++){k=k*10;}x2=x2+k;}x2=x2+DATA2[px2-1];if(f1==1) y=x1+x2; //根据标志位进行运算else if(f2==1) y=x1-x2;else if(f3==1) y=x1*x2;else if(f4==1) y=x1/x2;RESUIT[0]=y/10000000; //把各位分离出来存入结果数组中RESUIT[1]=(y%10000000)/1000000;RESUIT[2]=(y%1000000)/100000;RESUIT[3]=(y%100000)/10000;RESUIT[4]=(y%10000)/1000;RESUIT[5]=(y%1000)/100;RESUIT[6]=(y%100)/10;RESUIT[7]=y%10;while(!RESUIT[m]) m++;px3=m;}void DataHandle() //把每次按键的结果记录下来,并存到适当的位置{if((key<10)&&(flag==1)&&(flag1==0)){DATA1[px1]=key;px1++;flag=0;}else if((key<10)&&(flag==1)&&(flag1==1)){DATA2[px2]=key;px2++;flag=0;}else if(flag1==1){switch(key){case 10 : f1=1;f2=0;f3=0;f4=0;break; // "+"case 11 : f1=0;f2=1;f3=0;f4=0;break; // "-"case 14 : f1=0;f2=0;f3=1;f4=0;break; // "*"case 15 : f1=0;f2=0;f3=0;f4=1;break; // "/"}}}void DisplayHandle() //将数据显示在数码管上{uchar i,x;if((flag1==0)&&(flag2==0)){x=px1;if(px1==0) display(7,0);else{for(i=0;i<px1;i++){display(8-x,DA TA1[i]);x--;delay(5);}}}else if((flag1==1)&&(flag2==0)){x=px2;if(px2==0) display(7,0);else{for(i=0;i<px2;i++){display(8-x,DA TA2[i]);x--;delay(3);}}}else if ((flag1==1)&&(flag2==1)){for(i=7;i>=px3;i--){display(i,RESUIT[i]);delay(3);}}}。
基于单片机的红外遥控设计与制作

基于单片机的红外遥控设计与制作引言:红外遥控技术已广泛应用于日常生活中,如电视机、空调、音响等家电产品的遥控控制。
本文将介绍基于单片机的红外遥控器的设计和制作过程。
一、设计方案1.硬件设计(1)红外发射模块:负责发射红外信号,通过红外LED进行。
(2)红外接收模块:负责接收外界发射的红外信号,通过对接收到的信号进行解码,判断所接收到的红外遥控码是否与预设的相同。
(3)单片机:作为中央处理单元,负责控制红外发射和接收模块的工作。
(4)按键开关:用于控制红外发射模块,当按键按下时,红外发射模块进行红外信号的发射。
2.软件设计(1)初始化:对硬件进行初始化,包括设置单片机引脚的输入输出方向、设置红外接收模块相关参数等。
(2)红外码解码:通过红外接收模块接收到的红外信号进行解码,判断接收到的红外遥控码是否与预设的相同。
(3)功能实现:根据接收到的红外码,判断所对应的功能,并执行相应的操作。
二、制作过程1.硬件制作(1)选择合适的单片机,并连接红外发射和接收模块到单片机上。
(2)按照电路图进行焊接,注意焊接时的接线是否正确。
(3)搭建电路测试台,连接电源和调试设备,进行电路的测试和调试。
2.软件开发(1)选择合适的单片机开发工具,如Keil C51等,进行软件开发环境的搭建。
(2)编写初始化代码,并将其烧录到单片机上。
(3)编写红外码解码函数和功能实现函数,通过对接收到的红外码进行判断,执行相应的功能。
三、测试与调试1.进行硬件的测试和调试,检查电路连接是否正常,并观察红外接收模块是否能正确接收到红外信号。
2.进行软件的测试和调试,观察是否能正常解码和执行功能。
四、应用与展望总结:本文介绍了基于单片机的红外遥控器的设计和制作过程,包括硬件设计、软件设计、制作过程以及测试与调试。
通过制作一个简单的红外遥控器,我们可以更好地理解红外遥控技术的原理和应用,并可以根据实际需求进行功能扩展和优化。
基于51单片机的红外遥控控制电机转速设计

摘要本文首先描述了红外线通信原理和红外线接收电路,其次,介绍了直流电机的结构和工作原理,然后,详细的阐述了单片机内部结构及其原理,最后,着重介绍了PWM调速和直流电动机正转,反转和制动的原理。
直流电机具有良好的调速特性。
调速简单,平滑,调速范围大,过载能力强的特点。
能满足工业和生活中各种不同的要求,在近代社会发展中起着重要的作用。
电机采用红外遥控功能控制后,整个电机控制更简单、方便、且易于操作。
本文中通过红外线按键发射遥控信号,经过红外线接收元件接收信号,然后通过单片机对直流电动机的控制,实现对电动机的启动,降速、升速和停止功能。
关键词红外线遥控,直流电机,单片机,调速,制动PS:毕业设计14届知网查的重复率是0.3% 拿出来给学弟学妹们参考一下也可以代做毕业设计论文全手工保证不重复写论文或者做板子都可以电路设计单片机软件编程PLC也差不多扣扣9.1.4.0.7.8.0.9.9 联系我AbstractThis paper describes the principle of infrared communication and the infrared receiving circuit, secondly, introduced the structure and working principle of DC motor, and then, described in detail the internal structure and principle of single chip microcomputer, finally, introduces the PWM control and the DC motor forward, reverse, brake principleDC motor with a speed regulation characteristic of good. Speed control is simple, smooth, wide speed range, the characteristics of strong overload capacity. To meet the requirements of different kinds of industry and daily life, in the development of modern society play a important role. The use of infrared remote control function to control the motor, the motor control more simple, convenient, and easy to operate.This paper through the infrared remote control signal transmitter, through the infrared receiving element receives the signal, and then through the singlechip control of DC motor, the motor starting, speed, speed up and stop function.KEY WORDS:Infrared remote control, dc motor, single chip microcomputer, speed control, brakeis目录前言 (4)第1章红外线通信 (5)1.1 红外通信原理 (5)1.1.1 红外接收电路 (5)1.1.2红外发光管 (6)1.1.3红外接收器件 (6)1.1.4红外遥控系统结构 (6)1.1.5硬件电路设计 (7)1.1.6红外解码过程 (7)第2章直流电动机原理 (8)2.1 直流电动机 (8)2.2 直流电动机结构 (8)2.2.1 定子的结构和原理 (8)2.2.2转子的结构和原理 (9)2.2.3其它部分的结构和原理 (9)2.3直流电动机的控制原理 (10)第3章单片机STC89C51 (11)3.1 单片机概况 (11)3.2 单片机内部结构和原理 (11)3.2 复位电路及时钟电路 (12)3.1 单片机最小系统 (13)第4章PWM调制和电机的使用 (14)4.1 PWM调制 (14)4.2 直流电机的使用 (14)4.2.1 电机的启动 (14)4.2.2 电机的调速 (14)4.2.3 电机的反转 (15)4.2.4电机的制动 (15)4.3 电机驱动芯片L293d (15)第5章系统硬件设计 (17)5.1 系统硬件电路图 (17)5.2 系统硬件PCB图 (18)5.3 实物图 (19)结论 (20)致谢 (21)参考文献 (22)附录 (23)前言红外线器件应用范围的越来越广,也逐渐的走进了人们的日常生活。
基于51单片机的红外遥控LED灯控制系统设计与实现

郑州科技学院《单片机原理及应用》课程设计题目基于单片机的红外遥控LED灯控制设计学生姓名XX专业班级XXXX学号XXXXX院(系)信息工程学院指导老师XXXXX完成时间2015 年9 月20 日目录0. 引言 (1)1.设计方案 (2)1.1 系统方案选择 (3)1.2 系统构成框图 (5)2. 系统设计 (6)2.1 硬件原理 (8)2.1.1 硬件组成介绍 (8)2.1.2 电路各部分功能原理 (13)2.2 软件流程 (15)2.3 实验与仿真 (21)2.4 实物图 (23)结论 (24)参考文献 (25)附录1原理图 (26)附录2 源程序 (26)基于单片机红外遥控LED灯控制系统设计与实现0.引言随着国民经济的快速发展和社会进步,教育在全社会愈加被关注和重视,校园规模也随着受教育者的数量增加而不断扩大,教室的数量也大幅度增加。
为使师生有舒适的教学和学习的环境,无论是教室的面积、设施和照度,校方在力所能及的范围内,都付出了十分的努力。
但由于学校开放型的管理模式,以及全员的节能意识的淡薄,高校的教室在白天室内照度很高的情况下,仍然普遍存在开灯作业;即使室内无人或人数很少的情况下,也是全部开启室内照明。
夜间许多教室,即使仅有几个学生在教室自习,但室内照明全部开启,绝不会有师生因为只有少数人而仅开几盏灯。
LED被认为是21世纪的照明光源。
LED发光器件是冷光源,光效高,工作电压低,而且能耗低,同样亮度下,LED能耗为白炽灯的10%,荧光灯的50%。
LED寿命可达10万小时,是荧光灯的10倍,白炽灯的100倍。
用LED替代白炽灯或荧光灯,环保无污染。
使用安全可靠,便于维护。
我国照明用电占总发电量的12%。
目前,公共建筑的照明灯具控制大多采用手动开关,经常出现没有及时开关的现象,从而造成大量的能源浪费和使用上的不便。
另外,不必要的使用,也会缩短灯具的使用寿命。
本文阐述了一套LED智能照明控制系统设计方案,可以根据工作环境中是否有人员和环境补光亮度等来自动控制照明的开关和亮度。
基于单片机的红外线遥控器设计
De s i g n o f I n f r ar e d Re mo t e Co n t r o l l e r B a s e d O n MCU
W AN G Ho n g r n e i
( T i a n j i n T i a n b o S c i e n c e&T e c h n o l o g y C o . , L T D, T i a n j i n 3 0 0 0 7 2 , C h i n a )
子技 术 , 2 0 0 3 , ( 0 6 ) : 4 0 — 4 1
自动 化应 用 { 2 0 1 3 9期
3 2
图1 单 片 机 遥 控 发射 器 和接 收器 设 计 原 理 图
难度大 因此 , 这几种方式都未能大量使用 。
而 红 外 遥 控 方 式 是 以 红 外 线 作 为 载 体 来 传 送 控 制信息 的 , 因其 反 应 速 度 快 、 传 输效率 高 、 工 作 稳 定 可 靠 等 优 点 而 广 泛 应 用 红 外 线 发 射 装 置 采 用 红 外 发光 二 极管 . 遥 控 发 射 器 易 于 小 型化 且 价 格 低 廉 : 采 用 数 字 信 号 编 码 和二 次 调 制 方 式 . 不 仅 可 以 实 现 多 路 信 息 的控 制 . 增加遥控功能 , 提高信 号传输的率 消 耗 低 : 红 外 线 不 会 向室 外 泄 露 ,
率。
参 考文献
该 系统在实 验过程 中运行 稳定 、 控制 准确 、 操作
一
。
—
5 I X T A L 1 P I . 4  ̄ 1
[ 1 】曹建 军 , 戴 兵. 无 线 遥 控技 术在 施 工现 场 的应 用—— 利 用 弱 电控制 强 电实现 节 能减 材[ J ] . 施 工技 术 , 2 0 1 1 ,
51单片机红外控制发射器设计【非常详细】
单片机红外控制发射器设计【详细】摘要随着社会的发展、科技的进步以及人们生活水平的逐步提高,各种方便于生活的遥控系统开始进入了人们的生活。
传统的遥控器采用专用的遥控编码及解码集成电路,这种方法虽然制作简单、容易,但由于功能键数及功能受到特定的限制,只实用于某一专用电器产品的应用,应用范围受到限制。
而采用单片机进行遥控系统的应用设计,具有编程灵活多样、操作码个数可随便设定等优点。
本设计主要应用了A T89C2051单片机作为核心,综合应用了单片机中断系统、定时器、计数器等知识,应用红外光的优点。
遥控操作的不同,遥控发射器通过对红外光发射频率的控制来区别不同的操作。
遥控接收器通过对红外光接收频率的识别,判断出控制操作,来完成整个红外遥控发射、接收过程。
其优点硬件电路简单,软件功能完善,性价比较高等特点,具有一定的使用和参考价值。
关键词:单片机,红外遥控,中断,定时,计数,频率AbstractWith the development of our society and the gradual improvement of science and technology, various kinds of help remote control systems have began to enter people’s life. The traditional remote controllers adopt special remote control code and decode integrated circuits, though this kind of method is simply and easily, it is only the practical application of some certain special electric equipments because of the counted functional keys is counted and the restricted function, so the range of application is limited. But the remote controllers which adopt the microprocessors have many advantages such as flexible operating and unceremonious manipulative keys.The design has used A T89C2051 microprocessor as core, integratively apply the interruptive system, timer , counter ,etc. mainly to design originally and also take the advantage of the infrared light. The remote control launcher distinguishes different operation through the control on frequency of infrared emission of light. The remote control receiver judges control operation by adopting the discerned frequency of the received infrared light to finish the whole launching and receiving course.Its advantage is that the hardware circuit is simple, the software is with perfect function, have certain use and reference valueKeywords:Microprocessor, Infrared remote control,Interrupt,Timing,Counting,Frequency目录摘要 (I)Abstract (I)1 绪论 (5)1.1 单片机的产生与发展 (5)1.2红外通信技术概述 (3)1.2.1红外概述 (3)1.2.2 选择红外遥控的原因 (3)1.2.3红外的简单发射接收原理 (4)2.1 设计目的与原理 (4)2.2单片机红外遥控发射器设计原理 (4)2.3 单片机红外遥控接收器设计原理 (5)3系统硬件电路设计 (6)3.1有关A T89C2051单片机的介绍 (6)3.1.1简介 (6)3.1.2引脚介绍 (6)3.1.3 A T89C2051单片机的主要组成部分 (8)3.2定时器/计数器 (9)3.2.1主要特性 (9)3.2.2定时/计数器0和1的控制和状态寄存器 (10)3.2.3 T0和T1的4种工作方式 (12)3.3独立式按键结构 (12)3.4低功耗控制电路 (13)3.4.1低功耗的实现方法 (13)3.4.2 掉电保护和低功耗的设计 (13)3.5 CPU时钟电路 (16)3.6 复位电路 (17)3.6.1复位状态 (17)3.6.2 复位电路 (17)3.7 红外发射电路的设计 (18)3.8 红外接收电路的设计 (19)3.9 完整的系统电路设计图 (20)4 系统软件设计 (20)4.1遥控发射器程序设计 (20)4.1.1程序总体结构 (20)4.1.2 伪指令和初始化程序 (22)4.1.3键盘扫描程序 (24)4.1.4 中断服务程序 (25)4.2 遥控接收器程序设计 (27)4.2.1 程序总体结构 (27)4.2.2 初始化程序 (29)4.2.3 计数值比较程序 (30)4.2.4 定时器1中断服务程序 (30)5 总结与展望 (31)致谢 (32)参考文献 (33)附录1 (35)附录2 (37)1 绪论1.1单片机的产生与发展为适应社会发展的需要,微型计算机不断的更新换代,新产品层出不穷。
基于51单片机的红外遥控
基于51单片机的红外遥控红外遥控是无线遥控的一种方式,本文讲述的红外遥控,采用STC89C52单片机,1838红外接收头和38k红外遥控器。
1838红外接收头:红外遥控器:原理:红外接收的原理我不赘述,百度文库上不少,我推荐个网址,这篇文章写得比较清楚,也比较全面,http://wenku.baidu.com/view/c353e8360b4c2e3f57276349.html 我主要讲下程序的具体意思,在了解原理的基础上,我们知道,当我们在遥控器上每按下一个键,遥控器上的红外发射头都会发出一个32位的编码(32位编码分成4组8位二进制编码,前16位为用户码和用户反码,后16位为数据码和数据反码,用户码表示遥控器类型,数据码表示按键编码),不同的键对应不同的编码,红外接收头接收到这个编码后,发送给单片机,再进行相关操作。
源程序1:(这个程序的功能是将用户码和用户反码,数据码和数据反码显示在1602液晶上,因为遥控器买回来是不会说明按键对应什么码值,所以先自己测试,确定每个按键的码值)#include<reg52.h>#include<stdio.h>#include<intrins.h>#defineuint unsigned int#define uchar unsigned char#define _Nop() _nop_()#defineTURE 1#defineFALSE 0/*端口定义*/sbit lcd_rs_port=P3^5;/*定义LCD控制端口*/sbit lcd_rw_port = P3^6;sbit lcd_en_port= P3^4;#define lcd_data_portP0///////////////////////////////////void delay1(void)//关闭数码管延时程序{ﻩint k;ﻩfor (k=0; k<1000;k++);}////////////////////////////////////uchar codeline0[16]={"user:"};uchar codeline1[16]={"data:"};uchar code lcd_mun_to_char[16]={"0123456789ABCDEF"};unsigned charirtime;//红外用全局变量bitirpro_ok,irok;unsigned charIRcord[4];//用来存放用户码、用户反码、数据码、数据反码unsigned char irdata[33];//用来存放32位码值void ShowString(unsigned charline,char *ptr);//////////////////////////////////////////////void Delay(unsigned char mS);void Ir_work(void);voidIrcordpro(void);void tim0_isr(void)interrupt 1using 1//定时器0中断服务函数{ﻩirtime++;}void ex0_isr (void) interrupt0using0//外部中断0服务函数{ﻩstatic unsigned char i;static bitstartflag;ﻩif(startflag){ﻩif(irtime<63&&irtime>=33)//引导码TC9012的头码i=0;irdata[i]=irtime;irtime=0;i++;if(i==33){ﻩﻩirok=1;ﻩﻩi=0;ﻩﻩ}ﻩ}ﻩelse{ﻩirtime=0;startflag=1;ﻩﻩ}}voidTIM0init(void)//定时器0初始化{TMOD=0x02;//定时器0工作方式2,TH0是重装值,TL0是初值ﻩTH0=0x00;//reload valueﻩTL0=0x00;//initial valueET0=1;//开中断ﻩTR0=1;}void EX0init(void){ﻩIT0= 1; // Configure interrupt 0for falling edge on/INT0 (P3.2)EX0 =1; // EnableEX0 InterruptﻩEA=1;}void Ircordpro(void)//红外码值处理函数(关键函数){ﻩunsignedchari, j, k=1;unsignedchar cord,value;for(i=0;i<4;i++){//处理4个字节for(j=1;j<=8;j++){//处理1个字节8位ﻩﻩﻩcord=irdata[k];ﻩﻩvalue=value>>1;ﻩif(cord>7)value=value|0x80; //大于某值为1k++;}IRcord[i]=value;ﻩvalue=0;ﻩ}irpro_ok=1;//处理完毕标志位置1}///////////////////////////////////////////void lcd_delay(ucharms)/*LCD1602 延时*/{ucharj;while(ms--){for(j=0;j<250;j++){;}}}//////////////////////////////////////////////void lcd_busy_wait() /*LCD1602 忙等待*/{lcd_rs_port= 0;lcd_rw_port= 1;lcd_en_port= 1;lcd_data_port= 0xff;_Nop();_Nop();ﻩ_Nop();_Nop();while(lcd_data_port&0x80);lcd_en_port= 0;}///////////////////////////////////////////////void lcd_command_write(ucharcommand) /*LCD1602命令字写入*/ {lcd_busy_wait();lcd_rs_port=0;lcd_rw_port =0;lcd_en_port=0;lcd_data_port =command;_Nop();_Nop();_Nop();_Nop();_Nop();_Nop();lcd_en_port = 1;_Nop();_Nop();_Nop();_Nop();_Nop();_Nop();lcd_en_port= 0;}/////////////////////////////////////////void lcd_system_reset()/*LCD1602初始化*/{lcd_delay(20);lcd_command_write(0x38);lcd_delay(100);lcd_command_write(0x38);lcd_delay(50);lcd_command_write(0x38);lcd_delay(10);lcd_command_write(0x08);lcd_command_write(0x01);lcd_command_write(0x06);lcd_command_write(0x0c);}//////////////////////////////////////////////////voidlcd_char_write(ucharx_pos,y_pos,lcd_dat)/*LCD1602 字符写入*/{x_pos &=0x0f;/*X位置范围0~15 */y_pos&=0x01; /* Y位置范围0~ 1 */if(y_pos==1) x_pos += 0x40;x_pos+= 0x80;lcd_command_write(x_pos);lcd_busy_wait();lcd_rs_port =1;lcd_rw_port =0;lcd_en_port=0;lcd_data_port=lcd_dat;_Nop();_Nop();_Nop();_Nop();_Nop();_Nop();lcd_en_port = 1;_Nop();_Nop();_Nop();_Nop();_Nop();_Nop();lcd_en_port =0;}void main(void){uchar i;ﻩlcd_system_reset();/*初始化LCD1602 */lcd_data_port = 0xff;for(i=0;i<16;i++) lcd_char_write(i,0,line0[i]);for(i=0;i<16;i++) lcd_char_write(i,1,line1[i]);EX0init();//Enable Global Interrupt FlagﻩTIM0init();while(1){//主循环if(irok){ﻩIrcordpro();irok=0;ﻩ}if(irpro_ok){ /*遥控成功接收*/lcd_char_write(8,0,lcd_mun_to_char[IRcord[0]/0x10]);ﻩﻩlcd_char_write(9,0,lcd_mun_to_char[IRcord[0]%0x10]);ﻩlcd_char_write(11,0,lcd_mun_to_char[IRcord[1]/0x10]);ﻩﻩﻩlcd_char_write(12,0,lcd_mun_to_char[IRcord[1]%0x10]);ﻩﻩlcd_char_write(8,1,lcd_mun_to_char[IRcord[2]/0x10]);lcd_char_write(9,1,lcd_mun_to_char[IRcord[2]%0x10]);ﻩﻩlcd_char_write(11,1,lcd_mun_to_char[IRcord[3]/0x10]);ﻩlcd_char_write(12,1,lcd_mun_to_char[IRcord[3]%0x10]);ﻩ}//将码值显示在液晶上}}源程序2:(在知道了按键编码的基础上,我们便可以加入判断,判断哪个键被按下,进而执行相关操作)我只修改main函数,其他与源程序1相同sbit led1=P1^0;sbitled2=P1^1;sbit led3=P1^2;sbit led4=P1^3;sbitled5=P1^4;//发光二极管控制端定义voidmain(void){ﻩuchari;ﻩlcd_system_reset(); /* 初始化LCD1602*/lcd_data_port =0xff;for(i=0;i<16;i++) lcd_char_write(i,0,line0[i]);ﻩfor(i=0;i<16;i++)lcd_char_write(i,1,line1[i]);ﻩEX0init(); // EnableGlobalInterrupt FlagﻩTIM0init();while(1){//主循环if(irok){ﻩIrcordpro();irok=0;ﻩﻩ}ﻩif(irpro_ok){ /*遥控成功接收*/ﻩswitch(IRcord[2])//为什么判断IRcord[2],因为这个里面存放的是数据码ﻩﻩ{ﻩcase0x0c: led1=0;//按0键,灯1亮ﻩﻩﻩﻩbreak;ﻩﻩcase 0x18:led2=0;//按1键,灯2亮ﻩﻩﻩﻩbreak;ﻩﻩcase 0x5e: led3=0;//按2键,灯3亮ﻩﻩﻩbreak;ﻩﻩﻩcase 0x08: led4=0;//按3键,灯4亮ﻩﻩﻩﻩbreak;ﻩﻩcase 0x1c:led5=0;//按4键,灯5亮ﻩﻩﻩﻩﻩbreak;ﻩ}ﻩ}}}附连接图。
基于单片机的红外遥控器设计
实习报告
实习名称: 单片机应用实习
系部名称:
电子工程系
专业班级: 电子信息工程 08-1 班
学生姓名:
学 号:
20081518
指导教师: 刘海成 刘静森 朱晓明
黑龙江工程学院教务处制 2010 年 12 月
实习名称
单片机应用实习
实习时间 2010 年 12 月 13 日至 2010 年 12 月 24 日 共 2 周
软件功能分析:软件包括发射端和接收端,是本次设计的重点。在发射端按照约定 的协议发射一帧带有起始码,操作码,操作反码,结束码的信息。码的高低电平时间 由定时器严格控制。在接收端首先判断起始码的正确性,然后按照约定的协议解码, 按照码的高低电平时间不同,来区分‘1’码和‘0’码。若解码不正确,则忽略。若 解码正确,则按照发送的信息经单片机分析作出反应。
2
单片机 输出调 制
红外发射 电路发射
一体化接 收头接收 解调
单片机 解调
解调正 确做出 反应
图 1.4
方案分析:方案一原理及实现过程简单,可以遥控其他电器,实现小规模应用。但 当控制的电器数目多时,就需要发送更多的脉冲,发送的时间也就更长,接收的时间 也长,造成反应慢,实用性有限。且其抗干扰能力差,容易造成误操作。而方案二克 服了方案一的缺点。它采用脉冲编码的方式,将要发送的二进制数据编码为不同的脉 冲发射出去,发射不同的码控制不同的电器。在发送 1B 数据的情况下,最多可控制 255 路电器。发射效率很高,而且有操作反码来确认操作的正确性,抗干扰能力强。 但实现稍微繁琐。综上所述,我们选择了方案二来完成本次课程设计。
第 1 章 总体设计方案
1.1 总体设计方案
方案一:通过发送相同脉冲的个数来确定发送的数据。 1、遥控码的编码格式
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
从光学的角度而言,红外光是频率低于红色光的不可见光,在无线光谱的整个频率中占有很小一个频率段,波长为0.75—100微秒之间,其中0。75—3微秒之间的红外光称为近红外,3—30微秒之间的红外光称为中红外,30—100微秒之间的称为远红外。红外光就其性质而言很简单,与普通光线的频率特性没有很大的区别,但是,由于任何有热量的物体均有能量产生,所以红外的利用非常广泛,而且不可取代,能否检测红外、能测到多少红外或者红外检测的技术是否可以应用于任何自然的或想象的场合是红外应用技术的关键.
四、主要参考文献:
[1]梅丽凤,王艳秋,张军等。单片机原理及接口技术,北京:清华大学出版社,2004年。
[2]戴峻峰,付丽辉。多功能红外线遥控器的设计,传感器世界。2002,8(12):16~18.
[3]李光飞,楼然苗,胡佳文等.单片机课程设计实例指导,北京:北京航空航天出版社,
2004年.
[4]苏长赞。红外线与超声波遥控,北京:人民邮电出版社.1995年.
3.4独立式按键结构……………………………………………………………10
3。5掉电保护与低功耗设计……………………………………………………10
3。5.1低功耗的实现方法……………………………………………………10
3。5.2掉电保护与低功耗设计………………………………………………11
3。6系统完整电路设计图………………………………………………………13
2010.6。26~2010。8.10
在老师指导下反复修改,完成设计
五、指导教师意见:
指导教师签名:2010年5月10日
六、系部意见:
系主任签名:2010年5月11日
基于单片机的红外线遥控器
摘要
Abstract
第1章绪论…………………………………………………………………………1
1.1红外概述……………………………………………………………………1
我选择了基于单片机的红外线遥控器这个题目后,去图书馆查阅有关红外线、单片机的书籍,上网检索资料,去探究红外线遥控器的基本原理.遥控器分为发射器和接收器两部分,我先研究
遥控发射器,遥控发射器发射电路采用红外发光二极管发出经过调制的红外光波;再研究遥控接收器,接收器将红外发射器发射的红外光波转换为相应的电信号,再送放大器处理还原成信号。最后对遥控器进行总结.
51单片机-毕业设计基于单片机设计的红外线遥控器
———————————————————————————————— 作者:
———————————————————————————————— 日期:
学生毕业设计(论文)报告
系别:
专业:
班号:
学生姓名:
学生学号:
设计(论文)题目:基于单片机设计的红外线遥控器
3。6。1红外发射电路图………………………………………………………13
3.6。2红外接收电路图………………………………………………………14
第4章遥控器软件设计…………………………………………………………15
4.1遥控发射器程序设计………………………………………………………15
4。2遥控接收器程序设计………………………………………………………20
学生(签名)2010年5月7日
指导教师(签名)2010年5月10日
教研室主任(签名)2010年5月10日
系主任(签名)2010年5月12日
毕业设计(论文)开题报告
设计(论文)题目
基于单片机设计的红外线遥控器
一、选题的背景和意义:
随着社会的发展、科技的进步以及人们生活水平的逐步提高,各种方便于生活的遥控系统开始进入了人们的生活.传统的遥控器采用专用的遥控编码及解码集成电路,这种方法虽然制作简单、容易,但由于功能键数及功能受到特定的限制,只实用于某一专用电器产品的应用,应用范围受到限制。而采用单片机进行遥控系统的应用设计,具有编程灵活多样、操作码个数可随便设定等优点。
Keywords:Single-Chip Microcomputer;Infrared ray;launch;receive
第1章绪论
红外线遥控是目前使用最广泛的一种通信和遥控手段.由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空调机以及玩具等其它小型电器装置上也纷纷采用红外线遥控.工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。
3.红外线遥控的遥控距离一般为几米至几十米或更远一点。
4.红外线遥控具有结构简单,制作方便,成本低廉,抗干扰能力强,工作可靠性高等一系列优点,特别是室内遥控的优先遥控方式。同时,由于采用红外线遥控器件时,工作电压低,功耗小,外围电路简单,因此它在日常工作生活中的应用越来越广泛。
它在技术上的主要优点是:
3.1。2引脚介绍………………………………………………………………5
3.2红外线遥控电路设计………………………………………………………5
3.2。1信号发射电路…………………………………………………………6
3。2.2信号接收电路…………………………………………………………8
3。3 CPU时钟电路………………………………………………………………9
1.3选择红外遥控的原因
无线遥控方式可分为无线电波式、声控式、超声波式和红外线式.由于无线电式容易对其它电视机和无线电通讯设备造成干扰,而且,系统本身的抗干扰性能也很差,误动作多,所以未能大量使用。
1.无需专门申请特定频率的使用执照;
2.具有移动通信设备所必需的体积小、功率低的特点;
3.传输速率适合于家庭和办公室使用的网络;
4.信号无干扰,传输准确度高;
它的缺点是:
由于它是一种视距传输技术,采用点到点的连接具有方向性,两个设备之间如果传输数据,中间就不能有阻挡物;而且通讯距离较短,此外红外LED不是一种十分耐用的器件。
指导教师:
设ቤተ መጻሕፍቲ ባይዱ地点:
起迄日期:
毕业设计(论文)任务书
专业电子信息工程班级电子085姓名傅浩
一、课题名称:基于单片机设计的红外线遥控器
二、主要技术指标:
1。遥控距离:0~10m
2。额定工作电压:直流3V(普通5号干电池2节);红外光平均辐照度≥40μW/cm2;指向性(辐照度为20μW/cm2)≥30度
第5章结束语……………………………………………………………………25
答谢辞
参考文献
摘要
本设计主要应用了AT89C2051单片机作为核心,综合应用了单片机中断系统、定时器、计数器等知识,应用红外光的优点。文章首先介绍了红外遥控的基本原理和应用范围,再对AT89C2051单片机的结构和性能给出简单的说明,接着给出了遥控器的编码格式,及遥控发射器,遥控接受器的电路设计。对于遥控操作的不同,遥控发射器通过对红外光发射频率的控制来区别不同的操作;遥控接收器通过对红外光接收频率的识别,判断出控制操作,来完成整个红外遥控发射、接收过程。最后分别详细介绍遥控系统的发射部分和接收部分的电路原理图和程序流程图。
关键词:单片机;红外线;发射;接收
Abstract
The design has used AT89C2051 microprocessor as core,intergrately apply the interruptive system,timer, counter,etc。mainly to design originally and also take the advantage of the infrared light。Firstly,the fundamental principle and application ranges of infrared remote control are introduced.Secondly,the structureand performance of AT89C2051 single chip aresimplygiven out.Next,the code form of remote controller is given here.The remote control launcher distinguishes different operation through the control on frequency of infrared emission of light。The remote control receiver judges control operation by adopting the discerned frequency of the received infrared light to finish the wholelaunching and receiving course.Its advantage is that the hardware circuit is simple,the software is with perfect function,have certain use and reference value。Lastly,both the transmitting andreceiving parts are explained,including particular circuit and program flow chart respectively.本文为互联网收集,请勿用作商业用途个人收集整理,勿做商业用途
2.2单片机红外遥控发射器设计原理…………………………………………3
2.3单片机红外遥控接收器设计原理…………………………………………4
第3章遥控器硬件电路设计……………………………………………………5
3。1单片机AT89C2051介绍……………………………………………………5
3。1。1简介……………………………………………………………………5