基于51单片机的红外遥控开关设计
基于51多功能红外遥控器设计

界首例将设计流程、集成化 PCB 设计、可编程器件(如 FPGA)设计和基于处理器设计的嵌入式软件开 发功能整合在一起的产品,一种同时进行PCB和FPGA设计以及嵌入式设计的解决方案,具有将设计方案 从概念转变为最终成品所需的全部功能。
Altium Designer 6具有以下几个特点: 在PCB部分,实现了自动引脚优化和非凡的布线效果,提供了对高密度封装(如 BGA)的交互布 线功能, 总线布线功能,器件精确移动,快速铺铜等功能; 在原理图部分,新增加“灵巧粘帖”可以将一些不同的对象拷贝到原理图当中; 在嵌入式设计部分,增强了JTAG器件的实时显示功能,增强型基于FPGA的逻辑分析仪,可以支持 32位或64位的信号输入。
图为STC89C54RD+芯片 及其电路,该芯片与 STC89C51引脚基本相同, 但速度更快,存储空间更大。 本设计采用的是40DIP封装 的双列直插式芯片。
p 电源模块
电源模块包括电源接 口,自锁式电源开关 及红色发光二极管作 为电源指示灯,其中, 电源接口采用了5V圆 孔式接口,与原理图略 有不同
p NEC协议
一直按住按键,一串信息只能发送一次,而后发送的是以110ms 为周期的重复码,如有图所示,重复码是由9ms的AGC高电平和 4.5ms的低电平及一个560us的高电平组成。如左图所示。
红外学习
使用说明
下载程序
红外解码
红外发射
控制外部设备
LOGO
p PCB板开发流程
第一步
第二步
第三步
第四步
NEC协议
基于51单片机的红外遥控小车设计和制作

基于51单片机的红外遥控小车设计和制作红外遥控小车设计和制作是一个有趣且实用的项目。
本文将介绍一个基于51单片机的红外遥控小车的设计方案和制作过程。
设计方案:1.硬件设计:-采用STC89C52单片机作为控制核心,具有良好的性能和稳定性。
-红外接收器模块:用于接收红外信号并将其转换为电信号。
-直流电机:用于驱动小车的轮子,实现前进、后退、转弯等动作。
-驱动电路:将单片机的输出信号转换为合适的电流和电压来驱动电机。
-电源:使用锂电池作为电源,提供所需的电能。
2.软件设计:-红外信号解码:将接收到的红外信号进行解码,并判断是前进、后退、转弯等命令。
-控制逻辑:根据解码结果产生相应的电信号,驱动电机实现小车的相应动作。
-响应机制:处理红外信号的时延和干扰,避免误操作或信号丢失。
制作过程:1.连接电路:-将STC89C52单片机与电源、红外接收器模块和驱动电路连接。
确保连接正确、稳定。
-连接直流电机和驱动电路,通过电路板或者线缆进行连接,确保电机可以正确驱动。
2.烧录程序:- 使用Keil C编译器编写控制程序,并将程序通过编程器烧录到STC89C52单片机中。
3.完善控制逻辑:-在控制程序中添加红外信号解码和控制逻辑代码,使小车能够根据接收到的红外信号做出相应动作。
4.调试和测试:-将红外遥控器对准红外接收器模块,发送不同的红外信号,确保小车能够正确接收和处理信号。
-确保小车能够根据接收到的信号做出正确的动作,如前进、后退、转弯等。
5.完善功能:-可以根据实际需求添加其他功能,如声控、避障、图像识别等,提升小车的智能性和功能性。
通过以上设计和制作过程,一个基于51单片机的红外遥控小车就可以完成。
这个小车可以通过红外遥控器进行远程控制,并实现前进、后退、转弯等动作。
它可以在室内或者室外进行运行,并具有一定的智能性和便携性。
这个项目不仅可以培养学生的动手能力和创造力,还可以加深对电子电路和嵌入式系统的理解和掌握。
基于STC89C51单片机的红外遥控智能家居系统设计

基于STC89C51单片机的红外遥控智能家居系统设计1. 本文概述阐述问题:我会指出当前智能家居系统中存在的问题,以及为什么需要基于STC89C51单片机的解决方案。
提出解决方案:接着,我会概述STC89C51单片机在智能家居系统中的作用以及红外遥控技术的优势。
文章结构:我会简要介绍文章的结构,说明接下来的章节将如何展开。
随着科技的不断进步,智能家居系统逐渐成为现代家庭生活的一部分,它们通过提高居住环境的舒适性、安全性和便利性,极大地提升了人们的生活质量。
现有的智能家居系统在集成性、成本效益和用户交互体验方面仍存在不足。
为了解决这些问题,本文提出了一种基于STC89C51单片机的红外遥控智能家居系统设计方案。
STC89C51单片机以其较低的成本、丰富的功能和良好的稳定性,成为实现智能家居控制的理想选择。
结合红外遥控技术,该系统不仅能够实现远程控制家电设备,还能通过简单的编程实现个性化的家居自动化场景,从而为用户提供更加灵活和智能的居住体验。
本文将首先介绍智能家居系统的基本概念和发展趋势,然后详细阐述STC89C51单片机的工作原理及其在智能家居系统中的应用。
接着,本文将描述红外遥控技术的原理,并展示如何将其与STC89C51单片机结合,实现对家居设备的智能控制。
本文将通过一个实际的系统设计案例,展示该设计方案的可行性和实用性。
2. 相关技术综述单片机技术:介绍STC89C51单片机的基本特性,包括其处理能力、内存、IO端口等,并说明其在智能家居系统中的应用优势。
红外通信技术:概述红外通信的基本原理,包括信号的调制、传输和解码过程,以及红外技术在遥控设备中的优势。
智能家居系统架构:描述智能家居系统的一般架构,包括控制中心、通信协议、传感器和执行器等组成部分。
现有智能家居解决方案:简要回顾市场上已有的智能家居解决方案,分析它们的特点和局限性。
设计挑战与创新点:讨论在设计基于STC89C51单片机的红外遥控智能家居系统时面临的技术挑战,以及本设计相对于现有技术的创新之处。
基于51单片机的红外遥控器设计

天津职业大学二○一五~二○一六学年第1学期电子信息工程学院通信系统综合实训报告书课程名称:通信系统综合实训班级:通信技术(5)班学号:1304045640 1304045641 1304045646姓名:韩美红季圆圆陈真真指导教师:崔雁松2015年11月17日一、任务要求利用C51单片机设计开发一套红外线收发、显示系统。
具体要求:●编写相关程序(汇编、C语言均可);●用Proteus绘制电路图并仿真实现基本功能;●制作出实物二、需求分析(系统的应用场景、环境条件、参数等)现在各种红外线技术已经源源不断进入我们的生活中,在很多场合发挥着作用。
机场、宾馆、商场等的自动门,会在人进出时自动地开启和关闭。
原来,在自动门的一侧有一个红外线光源,发射的红外线照射到另一侧的光电管上,红外线是人体察觉不到的。
当人走到大门口,身体挡住红外线,电管接收不到红外线了。
根据设计好的指令,触发相应开关,就把门打开了。
等人进去后,光电管又可以接到红外线,恢复原来的线路,门又会自动关闭。
因此这种光电管被称为“电眼”,在许多自动控制设备中大显身手。
在家庭中,许多电子设备如彩色电视、空调、冰箱和音响等,都使用了各种“红外线遥控器”。
利用它我们可以非常方便的转换电视频道或设定空调的温度档次。
三、概要设计(系统结构框图/系统工作说明流程图)红外线收发、显示系统硬件由以下几部分组成:红外遥控器,51单片机最小系统,接收放大器一体集成红外接收头,LED灯显示电路。
红外线接收是把遥控器发送的数据(已调信号)转换成一定格式的控制指令脉冲(调制信号、基带信号),是完成红外线的接收、放大、解调,还原成发射格式(高、低电位刚好相反)的脉冲信号。
这些工作通常由一体化的接收头来完成,输出TTL兼容电平。
最后通过解码把脉冲信号转换成数据,从而实现数据的传输。
红外遥控系统电路框图四、详细设计(Proteus电路图、程序流程图、源程序清单)1)Proteus电路图:2)程序流程图:程序是首先初始化红外接收端口,然后检测是否接收红外信号,如果接收到红外信号就调用接收子程序,然后就通过L 额度LED 显示当前按键的结果,如图所示:程序流程图3)源程序清单:#include<reg51.h> //头文件#define uchar unsigned char //这里用"uchar"代替"unsigned char","uchar"用来定义无符号字符型数。
51单片机设计的红外线遥控器电路图及工作原理

51单片机设计的红外线遥控器电路图及工作原理你家里是否有一个电视机遥控器或者空调机遥控器呢?你是否也想让它遥控其他的电器甚至让它遥控您的电脑呢?那好,跟我一起做这个“红外遥控解码器”。
该小制作所需要的元件很少:单片机TA89C2051一只,RS232接口电平与TTL电平转换心片MAX232CPE 一只,红外接收管一只,晶振11.0592MHz,电解电容10uF4只,10uF 一只,电阻1K1个,300欧姆左右1个,瓷片电容30P2个。
发光二极管8个。
价钱不足20元。
电路图及原理:主控制单元是单片机AT89C2051,中断口INT0跟红外接受管U1相连,接收红外信号的脉冲,8个发光二极管作为显示解码输出(也可以用来扩展接其他控制电路),U3是跟电脑串行口RS232相连时的电平转换心片,9、10脚分别与单片机的1、2脚相连,(1脚为串行接收,2脚为串行发送),MAX232CPE的7、8脚分别接电脑串行口的2(接收)脚、3(发送脚)。
晶振采用11.0592MHz,这样才能使得通讯的波特率达到9600b/s,电脑一般默认值是9600b/s、8位数据位、1位停止位、无校验位。
电路就这么简单了,现在分析具体的编程过程吧。
如图所示,panasonic遥控器的波形是这样的(经过反复测试的结果)。
开始位是以3.6ms低电平然后是3.6ms高电平,然后数据表示形式是0.9ms低电平0.9ms 高电平周期为1.8ms表示“0”,0.9ms低电平2.4ms高电平周期为3.3ms表示“1”,编写程序时,以大于3.4ms小于3.8ms高电平为起始位,以大于2.2ms小于2.7ms高电平表示“1”,大于0.84ms小于1.11ms高电平表示“0”。
因此,我们主要用单片机测量高电平的长短来确定是“1”还是“0”即可。
定时器0的工作方式设置为方式1:mov tmod,#09h,这样设置定时器0即是把GATE置1,16位计数器,最大计数值为2的16次方个机器周期,此方式由外中断INT0控制,即INT0为高时才允许计数器计数。
51单片机-毕业设计基于单片机设计的红外线遥控器

ping primary school fire safety systems to e nha nce fire safety, prote ction of public property and t he life and property safety of teacher s and students, school fire safety into day-to-day ma nagement, is devel opi ng the following fire safety system. 1, strengt hen fire safety educati on of the whole school. Accordi ng to the re quireme nts of the Fire S ervices A ct, so t hat everyone has of keeping fire control safety, pr otecting fire control facilities, fire preve ntion, reports of fire学生毕业设计(论文)报告系别:专业:班号:学生姓名:学生学号:设计(论文)题目:基于单片机设计的红外线遥控器指导教师:设计地点:起迄日期:ping primary school fire safety systems to e nha nce fire safety, prote ction of public property and t he life and property safety of teacher s and students, school fire safety into day-to-day ma nagement, is devel opi ng the following fire safety system. 1, strengt hen fire safety educati on of the whole school. Accordi ng to the re quireme nts of the Fire S ervices A ct, so t hat everyone has of keeping fire control safety, pr otecting fire control facilities, fire preve ntion, reports of fire常州信息职业技术学院电子与电气工程学院毕业设计论文毕业设计(论文)任务书专业电子信息工程班级电子085 姓名傅浩一、课题名称:基于单片机设计的红外线遥控器二、主要技术指标:1.遥控距离:0~10m2.额定工作电压:直流3V(普通5号干电池2节);红外光平均辐照度≥40μW/cm2;指向性(辐照度为20μW/cm2)≥30度3.欠压条件下(直流2.4v):红外光平均辐照度≥20μW/cm2,指向性(辐照度为10μW/cm2)≥30度三、工作内容和要求:1.以AT89C2051单片机作为核心,综合应用了单片机中断系统、定时器、计数器等知识,应用红外光的优点2.遥控发射器通过对红外光发射频率的控制来区别不同的操作3.遥控接收器通过对红外光接收频率的识别,判断出控制操作,来完成整个红外遥控发射、接收过程四、主要参考文献:[1] 梅丽凤,王艳秋,张军等. 单片机原理及接口技术,北京:清华大学出版社,2004年.[2] 戴峻峰,付丽辉. 多功能红外线遥控器的设计,传感器世界.2002,8(12):16~18.[3] 李光飞,楼然苗,胡佳文等. 单片机课程设计实例指导,北京:北京航空航天出版社,2004年.[4] 苏长赞. 红外线与超声波遥控,北京:人民邮电出版社.1995年.学生(签名)2010 年 5 月7 日指导教师(签名)2010 年5 月10 日教研室主任(签名)2010 年5 月10 日系主任(签名)2010 年5 月12 日ping primary school fire safety systems to e nha nce fire safety, prote ction of public property and t he life and property safety of teacher s and students, school fire safety into day-to-day ma nagement, is devel opi ng the following fire safety system. 1, strengt hen fire safety educati on of the whole school. Accordi ng to the re quireme nts of the Fire S ervices A ct, so t hat everyone has of keeping fire control safety, pr otecting fire control facilities, fire preve ntion, reports of fire毕业设计(论文)开题报告设计(论文)题目基于单片机设计的红外线遥控器一、选题的背景和意义:随着社会的发展、科技的进步以及人们生活水平的逐步提高,各种方便于生活的遥控系统开始进入了人们的生活。
基于51单片机的红外遥控课程设计

目录第一章设计简介 (2)第二章系统方案 (2)一、设计方案对比 (2)二、方案设计 (4)第三章硬件设计 (4)一、红外遥控器 (4)二、红外接收模块部分 (6)第四章软件设计 (7)一、红外遥控器软件设计 (7)二、红外接收模块软件设计 (10)三、程序代码 (10)第五章测试及分析 (10)第六章结论 (10)第七章参考文献 (11)附录一(程序代码): (12)第一章设计简介本设计分为红外遥控器与红外接收模块两部分。
红外遥控器包括矩阵键盘、增强型51单片机(STC11L04E)、红外发射电路组成。
单片机扫描矩阵键盘后,将按键状态进行信源编码与信道编码,载波(38k脉冲)后由红外发射器发射。
红外接收模块部分由传统51单片机、数码管、一体化红外接收头组成。
一体化红外接收头将信号进行限幅放大、带通滤波、解调、积分、整形后输出解调信号至单片机,并由单片机输出解调信号。
第二章系统方案一、设计方案对比红外遥控器部分2.1.1 主控芯片方案一:HT6222方案二:STC11L04E分析:传统红外遥控器芯片HT6222具有性价比高、功能强大、稳定可靠、使用简单等特点,但该芯片难以零购。
STC11L04E为增强型51单片机,控制灵活(载波频率可调、通信协议可变更、用户码可变换)、价格较HT6222稍贵。
STC11L04E最大的特别是低功耗,功作电压低3.3V,易于应用于移动设备。
结论:由于STC11L04E单片机的灵活性以及学习性(可增强我们对一个完整通信系统的理解)。
因此我们采用方案二。
2.1.2 矩阵键盘方案一:3*6*2.5 贴片轻触开关方案二:6*6*6 直插轻触开关分析:3*6*2.5贴片轻触开关虽然体积小巧、美观,但与6*6*6直插轻触开关对比,在制板布线上较繁锁。
结论:综上,我们采用6*6*6直插轻触开关,使得整体布线简单,可布单面版,简化制板流程。
2.1.3电源模块方案一:钮扣电池CR2032方案二:可充电锂电池18650分析:可充电锂电池18650容量大,节能环保(可多次利用),但体积大。
基于51单片机的红外遥控开关设计

2)数据存储器(RAM):片内为128B,片外最多可以外扩64KB。片内的128B的RAM以告诉RAM形式集成在单片机内。可以加快但单片机的运行速度,而且这种结果的RAM可以降低功耗。
2.方式1:当M1、M0为01是,定时器/计数器工作于方式1,这时定时器/计数器的等效电路如下图3-3
图3-3定时器/计数器方式1逻辑结构图
3方式2:
方式0和方式1的最大特点是计数溢出后,计数器为全0.因此在循环定时或循环计数用时就存在反复装入计数初值的问题。这不仅影响定时精数,而且也给程序设计带来麻烦。方式2就是针对此问题而设置的。当M1、M2为10时,定时器/计数器处于工作方式2,这时定时器/计数器得等效框图如图3-4所示。这种工作方式可以省去用户软件中得重装初值的程序,简化定时初值的计算方法,可以相当精确的确定定时时间。
3)程序存储器(ROM/EPROM):用来存储程序,8031没有此部件,8051为4KB的ROM;8751为4KB的EPROM。片外最多可以扩至64KB。
4)4个8位并行I/O口(P0、P1、P2、P3)
5)1个串行口:1个全双工的串行口,具有4种工作方式。可以用来进行串行通信,扩展并行I/O口,甚至与多个单片机相连接构成多机系统,从而使单片机的功能更加强且应用更广。
系统组成如图2-2所示【5】。系统由发射部分和接收部分组成。发射部分采用脉冲个数编码,将待发射信号调制成38KHz的载波信号,由红外发射管进行发射。接收部分由红外接收管进行解码接收,单片机通过对所接收信号的分析,输出相应的控制信号,由发光二极管和数码管指示出发射部分按下的按键号。
基于51单片机的红外通信设计报告

基于51单片机的红外通信设计报告研究方案:基于51单片机的红外通信设计报告摘要:本研究旨在通过对基于51单片机的红外通信的研究与实践,对红外通信协议进行优化和改进,提高通信的可靠性和稳定性。
通过设计红外发射器和接收器,并利用51单片机进行编程控制,实现了红外信号的发送与接收。
在实验中,采集了一系列数据,通过对这些数据的整理和分析,发现了现有研究成果的不足之处,并提出了一种新的观点和方法,为解决实际问题提供了有价值的参考。
1. 引言红外通信是一种常见的无线通信方式,具有传输速度快、安全可靠等优点,在家庭电器控制、遥控玩具、无线数据传输等领域广泛应用。
本研究基于51单片机进行红外通信协议的设计与实践,旨在优化和改进红外通信的性能。
2. 研究设计2.1 硬件设计2.1.1 红外发射器设计通过使用红外发光二极管作为发射器,并连接到51单片机的IO口,控制IO口的高低电平来实现对发射器的开关控制。
2.1.2 红外接收器设计通过使用红外接收头作为接收器,并将其连接到51单片机的IO口,通过检测接收器的信号电平变化来判断接收到的红外信号。
2.2 软件设计2.2.1 红外信号解析与发送在51单片机上编写红外信号解析与发送的程序,通过对输入信号的解析,将需要发送的红外信号编码成特定协议的数据帧,再通过IO口的控制将数据帧发送出去。
2.2.2 红外信号接收与解析在51单片机上编写红外信号接收与解析的程序,通过IO口的状态变化检测,获取红外接收器接收到的信号,并对接收到的信号进行解析,还原成原始数据。
3. 实验与调查情况在本研究中,我们通过实验和调查采集了一系列的数据来评估所设计的红外通信系统的性能。
3.1 实验设置我们设置了一个包含发射器和接收器的实验平台。
通过按下遥控器上的按键,触发发射器发送特定红外信号,在接收器上探测到红外信号,并通过51单片机进行信号解析。
3.2 数据采集与分析通过对实验中采集到的数据进行整理和分析,我们可以得到以下结论:(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;ﻩ}ﻩ}}}附连接图。
基于51单片机的步进电机红外控制系统的设计

文章标题:基于51单片机的步进电机红外控制系统的设计引言在现代科技发展迅速的时代,控制系统已经被广泛应用于各个领域。
其中,基于51单片机的步进电机红外控制系统的设计,不仅在工业领域有着重要的作用,同时也在家电领域、智能家居等方面得到了广泛的应用。
本文将从步进电机控制系统的设计原理、红外控制的基本概念以及基于51单片机的系统设计方案等方面展开深入探讨。
一、步进电机控制系统的设计原理步进电机是一种将电脉冲信号转换为机械位移的执行元件,其控制系统设计原理是核心。
以步进电机为执行元件的控制系统通常包括电脉冲发生电路、电流驱动电路、位置控制逻辑电路以及接口电路等模块。
在系统设计中,需要考虑步进电机的类型、工作方式、转动角度以及控制精度等因素,以选择合适的控制方案和相关元器件。
针对步进电机的控制系统设计,首先需要从硬件电路和软件控制两个方面进行综合考虑。
硬件方面需要设计合适的脉冲发生电路和驱动电路,并根据具体场景考虑相关的接口电路,以实现步进电机的控制和驱动。
而软件控制方面,则需要编写相应的控制程序,使得系统能够根据具体的控制要求进行精准的控制和调节。
二、红外控制的基本概念红外控制是一种常见的无线遥控技术,通过使用红外线传输信号来实现对设备的控制。
通常包括红外发射器和红外接收器两个部分,发射器将控制信号转换成红外信号发送出去,接收器接收红外信号并将其转换成电信号进行处理。
在实际应用中,红外控制技术已经被广泛应用于各种家电遥控器、智能家居系统以及工业自动化领域。
红外控制的基本原理是在发射器和接收器之间通过红外线进行双向通信,通过调制解调的方式进行信号的传输和解析。
设计基于红外控制的步进电机系统需要考虑红外信号的发射和接收过程,以及相关的解析算法和信号处理。
信号的稳定性、抗干扰能力以及传输距离等也是需要考虑的重要因素。
三、基于51单片机的系统设计方案在步进电机红外控制系统的设计中,选择合适的控制芯片和处理器是至关重要的。
基于51单片机的红外遥控开关设计初稿

本次设计是基于单片机的红外遥控开关系统,它在我们的生产和生活中有着很广泛的应用前景。在我们所居住的场所,我们就可以通过红外遥控技术来控制各种电器、仪表、机械等。这种系统具有很强的适用性、灵活性、先进性。它的应用将我们的生活变的更加轻松。大大方便了人们的生活随着信息技术的不断向前发展,一些功能更强的应用系统将出现在我们的各个方面,这将体现着高科技带给人们的无穷魅力。
2.方式1:当M1、M0为01是,定时器/计数器工作于方式1,这时定时器/计数器的等效电路如下图3-3
图3-3定时器/计数器方式1逻辑结构图
3方式2:
方式0和方式1的最大特点是计数溢出后,计数器为全0.因此在循环定时或循环计数用时就存在反复装入计数初值的问题。这不仅影响定时精数,而且也给程序设计带来麻烦。方式2就是针对此问题而设置的。当M1、M2为10时,定时器/计数器处于工作方式2,这时定时器/计数器得等效框图如图3-4所示。这种工作方式可以省去用户软件中得重装初值的程序,简化定时初值的计算方法,可以相当精确的确定定时时间。
定时器/计数器T0由特殊功能寄存器TH0、TL0构成,定时器/计数器T1由特殊功能寄存器T1、TL1构成。特设功能寄存器TMOD用于选择定时器/计数器T0、T1得工作模式和工作方式。特殊功能寄存器TCON用于控制T0、T1得启动和停止计数,同时包含了T0、T1得状态。TMOD、TCON这两个寄存器得内容由软件设置。单片机复位时,两个寄存器得所有位都被清0。
AT89C51芯片内部具有下列硬件资源:4KB闪速存储器、128个字节RAM、32条I/O线,两个16位定时/计数器、五源两级终端结构、全双工串行口、片内振荡器及时钟电路等。
正是由于AT89C51具有以上优点,所以我选择了它作为系统硬件所选单片机类型。
基于51单片机智能红外遥控器的设计

6511青岛农业大学毕业论文(设计)任务书论文(设计)题目简易智能红外遥控器的设计要求完成时间论文(设计)内容(需明确列出研究的问题):本设计要求设计一简易智能红外遥控器,需要解决以下问题:1、熟悉红外遥控器的工作原理;2、掌握红外通信的编解码原理及至少一种串行通信数据校验算法;3、实现一个遥控器对至少2台家电设备的控制;4、绘制系统电气原理图及PCB图;5、画出系统的软件流程图并编写系统程序;6、尽量做出样机并完成系统调试。
资料、数据、技术水平等方面的要求:1、查阅至少10篇以上与课题相关资料,至少有两篇是英文文献;2、原理图的绘制要求规范;3、绘制系统PCB图;4、编写并调试系统程序;5、完成实物演示;6、独立完成论文;7、论文要求打印。
指导教师签名:年月日目录摘要 (I)ABSTRACT (II)一. 绪论 (1)1.1课题研究的背景 (1)1.2课题研究的目的 (1)1.3课题研究的内容 (1)二. 系统概述 (3)2.1国外发展概况 (3)2.2国内发展概况 (4)三. 智能红外遥控器的硬件设计 (5)3.1主要元器件介绍 (5)3.1.1 STC系列单片机介绍 (5)3.1.2 红外发光二极管 (6)3.1.3 红外接收头 (7)3.1.4 E2PROM-AT24C02的应用 (8)3.2系统设计思路 (12)3.2.1 红外遥控器组成 (14)3.2.2 红外遥控器的框图 (15)3.3硬件电路设计 (15)3.3.1 发射端硬件电路 (15)3.3.2 接收端硬件电路 (16)四. 智能红外遥控器的软件设计 (18)4.1编解码约定与存储 (18)4.1.1 发射编码部分 (18)4.1.2 接收解码部分 (21)4.1.3 存储部分 (23)4.2子程序介绍 (25)4.2.1 发射子程序 (25)4.2.2 接收子程序 (29)五. 总结与展望 (33)5.1总结 (33)5.2本文的不足 (33)参考文献 (34)致谢 (35)附录一原理图 (36)附录二程序 (37)简易智能红外遥控器的设计摘要红外遥控技术能给人们日常生活带来更加人性化的关怀和体贴,同时还兼具节能与安防等辅助功能,相对应的红外遥控器与人们的日常生活息息相关,是人们使用频率最高的智能化设备。
基于51单片机的红外遥控器设计

基于51单片机的红外遥控器设计近年来,随着智能家居的兴起,红外遥控器在我们的生活中扮演着越来越重要的角色。
本文将基于51单片机,设计一个简单的红外遥控器。
首先,我们需要了解红外遥控器的工作原理。
红外遥控器使用红外线来传输指令。
当用户按下遥控器上的按键时,红外发射器发射一个特定的红外信号。
接收器接收到这个信号后,将其转换成电信号,并将其发送到电子设备中,实现对设备的控制。
接下来,我们需要选择合适的红外发射器和接收器。
常见的红外发射器有红外LED,常见的红外接收器有红外接收头。
在选择红外发射器和接收器时,要根据其工作频率、传输距离、灵敏度等因素进行选择。
在本设计中,我们选择了工作频率为38kHz的红外发射器和接收器。
接下来,我们需要设计电路,并进行程序开发。
首先,我们需要连接红外发射器和接收器到51单片机上。
红外发射器的一个引脚连接到51单片机的I/O口,另一个引脚连接到正极电源,第三个引脚连接到电源的接地端。
红外接收器的输出引脚连接到51单片机的I/O口,电源和接地端分别连接到正负电源。
接下来,我们需要编写程序。
首先,我们需要设置51单片机的I/O 口为输入或输出。
然后,我们需要编写程序来发送红外信号。
我们可以使用PWM技术来模拟红外信号的脉冲。
当用户按下遥控器上的按键时,我们可以发送一个特定的脉冲序列,来控制电子设备。
同时,我们还需要编写程序来接收红外信号。
当红外接收器接收到红外信号时,会输出一个特定的电平信号。
我们可以使用外部中断来检测这个信号,并进行相应的处理。
在程序开发过程中,我们需要注意红外信号的协议。
常见的红外信号协议有NEC、SONY等。
我们需要根据所使用的红外接收器的协议来编写相应的程序。
最后,我们需要测试代码的功能和稳定性。
可以通过连接电子设备,按下遥控器上的按键,来测试红外信号的发送和接收功能。
如果一切正常,我们的红外遥控器设计就完成了。
总结起来,基于51单片机的红外遥控器设计是一个简单而有趣的项目。
(完整word版)基于51单片机的红外遥控智能定时开关插座

目录1第一章 绪论..............................................................................11.1 选题的目的与意义 ................................................................1.2 本课题在国内外的发展现状及趋势 ..................................................121.3 本课题要解决的主要问题 ..........................................................3第二章 系统设计方案 .....................................................................32。
1 系统结构与功能 ................................................................32.2 总体系统框图 .....................................................................42。
3 开关的选择 .....................................................................2.4 显示方式选择 .....................................................................452.5 时钟的实现及单片机的选择 ........................................................52。
6 按键控制部分的实现 ............................................................6第三章 主要元器件原理及其应用 ..........................................................63。
基于51单片机的红外遥控

基于51单片机的红外遥控本讲内容:介绍红外遥控的知识,通过例程展示红外遥控程序的编写方法。
红外线简介:在光谱中波长自760nm至400um的电磁波称为红外线,它是一种不可见光。
目前几乎所有的视频和音频设备都可以通过红外遥控的方式进行遥控,比如电视机、空调、影碟机等,都可以见到红外遥控的影子。
这种技术应用广泛,相应的应用器件都十分廉价,因此红外遥控是我们日常设备控制的理想方式。
接收头输出的波形正好和遥控芯片输出的相反。
在这里红外通信采用NEC协议,它的特征如下:信号调制红外遥控信号接收管接口电路:红外信号发射电路 红外信号接收电路例程:红外遥控信号发射:/*****************红外通信——发射*******************单片机型号:STC89C52RC*开发环境:KEIL*名称:红外通信发射*功能:按下按键S4,S5,S6,S8,S9,S10,S11,S13,S14发射对应键值,可以与红外通信——接收程序配套使用***************************************************/#include <REG51.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned int#define SBM 0x80 //识别码#define m9 (65536-8294) //约9mS#define m4_5 (65536-4147) //约4.5mS#define m1_6 (65536-1521) //约1.65mS#define m_65 (65536-599) //约0.65mS#define m_56 (65536-516) //约0.56mS#define m40 (65536-36864) //约40mS#define m56 (65536-51610) //56mS#define m2_25 (65536-2074) //约2.25mSconst uchar TabHL1[9]={0x0c,0x18,0x5e,0x08,0x1c,0x5a,0x42,0x52,0x4a};sbit IR=P1^5; //定义发射引脚sbit BEEP=P2^3;void keyscan();void ZZ(uchar x);void Z0(uchar temp);void TT0(bit BT,uint x);void delay(int In,int Out);/*┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈函数功能:主函数┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈/ void main(void){TMOD=0x01; //T0 16位工作方式IR=1; //发射端口常态为高电平while(1){keyscan();}}/*┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈函数功能:发送主程序┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈/ void ZZ(uchar x){TT0(1,m9); //高电平9mSTT0(0,m4_5); //低电平4.5mS/*┈发送4帧数据┈*/Z0(SBM);Z0(~SBM);Z0(x);Z0(~x);/*┈┈结束码┈┈*/TT0(1,m_65);TT0(0,m40);}/*┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈函数功能:单帧发送程序入口参数:1帧数据┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈/ void Z0(uchar temp){uchar v;for (v=0;v<8;v++) //循环8次移位{TT0(1,m_65); //高电平0.65mSif(temp&0x01) TT0(0,m1_6); //发送最低位else TT0(0,m_56);temp >>= 1; //右移一位}}/*┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈函数功能:38KHz脉冲发射 + 延时程序入口参数:(是否发射脉冲,延时约 x (uS))┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈/void TT0(bit BT,uint x){TH0=x>>8; //输入T0初始值TL0=x;TF0=0; //清0TR0=1; //启动定时器0if(BT==0)while(!TF0);//BT=0时不发射38KHz脉冲只延时;BT=1发射38KHz脉冲且延时;else while(1) //38KHz脉冲,占空比5:26{IR = 0;if(TF0)break;if(TF0)break;IR=1;if(TF0)break;if(TF0)break;if(TF0)break;if(TF0)break;if(TF0)break;if(TF0)break;if(TF0)break;if(TF0)break;if(TF0)break;if(TF0)break;}TR0=0; //关闭定时器0TF0=0; //标志位溢出则清0IR =1; //脉冲停止后,发射端口常态为高电平}void keyscan() //按键扫描函数{uchar buffer;/***************************************************/P3=0xfe; //扫描S3,S4,S5,S6;buffer=P3;buffer=buffer & 0xf0;if(buffer!=0xf0){delay(5,10);if(buffer!=0xf0){buffer=P3;switch(buffer){case 0xee:{;}break;case 0xde:{ZZ(TabHL1[0]);}break;case 0xbe:{ZZ(TabHL1[1]);}break;case 0x7e:{ZZ(TabHL1[2]);}break;}while(buffer != 0xf0){buffer=P3;buffer=buffer&0xf0;BEEP=0;}BEEP=1;}}/****************************************************/ P3=0xfd; //扫描S8,S9,S10,S11buffer=P3;buffer=buffer & 0xf0;if(buffer!=0xf0){delay(5,10);if(buffer!=0xf0){buffer=P3;switch(buffer){case 0xed:{ZZ(TabHL1[3]);}break;case 0xdd:{ZZ(TabHL1[4]);}break;case 0xbd:{ZZ(TabHL1[5]);}break;case 0x7d:{ZZ(TabHL1[6]);}break;}while(buffer!=0xf0){buffer=P3;buffer=buffer&0xf0;BEEP=0;}BEEP=1;}}/****************************************************/ P3=0xfb; //扫描S13,S14,S15,S16buffer=P3;buffer=buffer&0xf0;if(buffer!=0xf0){delay(5,10);if(buffer!=0xf0){buffer=P3;switch(buffer){case 0xeb:{ZZ(TabHL1[7]);}break;case 0xdb:{ZZ(TabHL1[8]);}break;}while(buffer!=0xf0){buffer=P3;buffer=buffer&0xf0;BEEP=0;}BEEP=1;}}}void delay(int In,int Out) //定义延时函数{int i,j;for(i=0;i<In;i++){for(j=0;j<Out;j++){;}}}红外遥控信号接收:/*****************红外通信--接收*******************单片机型号:STC89C52RC*开发环境:KEIL*功能:在液晶LCD1602上显示接收到的数值*************************************************/#include<reg52.h>#define LCD_Data P0#define Busy 0x80sbit IR=P3^2;sbit LCD_RS=P1^0;sbit LCD_RW=P1^1;sbit LCD_E=P2^5;void TIM0init(void);void EX0init(void);void SYSinit(void);void delay(int In,int Out);void Delay5Ms(void);void Ir_work(void);void Ircordpro(void);void WriteDataLCD(unsigned char WDLCD);void WriteCommandLCD(unsigned char WCLCD,BuysC);unsigned char ReadDataLCD(void);unsigned char ReadStatusLCD(void);void LCDInit(void);void DisplayOneChar(unsigned char X,unsigned char Y,unsigned char DData);void DisplayListChar(unsigned char X,unsigned char Y,unsigned char code *DData); void Info_display(void);bit IRpro_ok;bit IR_ok;unsigned char IRcord[4];unsigned char IRdata[33];unsigned char codedofly_DuanMa[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};unsigned char irtime;unsigned char speed_num=0;unsigned char codemb_table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};unsigned char code welcome[]={"YOU ARE WELCOME"};unsigned char code ir_reve[]={"IR_RECEIVE: "};/*******************5ms延时函数*********************/void Delay5Ms(void){unsigned int TempCyc=3552;while(TempCyc--);}void delay(int In,int Out){int i,j;for(i=0;i<In;i++){for(j=0;j<Out;j++){;}}}/***********************写数据函数***********************/ void WriteDataLCD(unsigned char WDLCD){ReadStatusLCD();LCD_Data=WDLCD;LCD_RS=1;LCD_RW=0;LCD_E=0;LCD_E=0;LCD_E=1;}/**********************写指令函数************************/ void WriteCommandLCD(unsigned char WCLCD,BuysC){if(BuysC)ReadStatusLCD();LCD_Data=WCLCD;LCD_RS=0;LCD_RW=0;LCD_E=0;LCD_E=0;LCD_E=1;}/***********************读状态函数************************/ unsigned char ReadStatusLCD(void){LCD_Data=0xFF;LCD_RS=0;LCD_RW=1;LCD_E=0;LCD_E=0;LCD_E=1;while(LCD_Data & Busy);return(LCD_Data);}/************************LCD初始化************************/ void LCDInit(void){LCD_Data=0;WriteCommandLCD(0x38,0);Delay5Ms();WriteCommandLCD(0x38,0);Delay5Ms();WriteCommandLCD(0x38,0);Delay5Ms();WriteCommandLCD(0x38,1);WriteCommandLCD(0x08,1);WriteCommandLCD(0x01,1);WriteCommandLCD(0x06,1);WriteCommandLCD(0x0C,1);}/*******************按指定位置显示一个字符******************/void DisplayOneChar(unsigned char X,unsigned char Y,unsigned char DData){Y&=0x1;X&=0xF;if(Y)X|=0x40;X|=0x80;WriteCommandLCD(X,0);WriteDataLCD(DData);}/*******************按指定位置显示一串字符******************/void DisplayListChar(unsigned char X,unsigned char Y,unsigned char code *DData) {unsigned char ListLength;ListLength=0;Y&=0x1;X&=0xF;while(DData[ListLength]>=0x20){if(X<=0xF){DisplayOneChar(X,Y,DData[ListLength]);ListLength++;X++;}}}/***********************定时器0初始化***********************/void TIM0init(void){TMOD=0x02;TH0=0x00;TL0=0x00;ET0=1;TR0=1;}/**********************外部中断0初始化**********************/void EX0init(void){IT0=1;EX0=1;EA=1;}/*************************系统初始化*************************/void SYSinit(void){TIM0init();EX0init();LCDInit();}/********************红外信号接收相关函数********************/void Ir_work(void){switch(IRcord[2]){case 0x0C:{DisplayOneChar(12,1,0x31);}break;case 0x18:{DisplayOneChar(12,1,0x32);}break;case 0x5e:{DisplayOneChar(12,1,0x33);}break;case 0x08:{DisplayOneChar(12,1,0x34);}break;case 0x1c:{DisplayOneChar(12,1,0x35);}break;case 0x5a:{DisplayOneChar(12,1,0x36);}break;case 0x42:{DisplayOneChar(12,1,0x37);}break;case 0x52:{DisplayOneChar(12,1,0x38);}break;case 0x4a:{DisplayOneChar(12,1,0x39);}break;default:break;}}void Ircordpro(void){unsigned char i,j,k;unsigned char cord,value;k=1;for(i=0;i<4;i++){for(j=1;j<=8;j++){cord=IRdata[k];if(cord>7)value|=0x80;if(j<8){value>>=1;}k++;}IRcord[i]=value;value=0;}IRpro_ok=1;}/********************红外信号接收相关函数********************/ void main(void){SYSinit();delay(5,100);DisplayListChar(0,0,welcome);DisplayListChar(0,1,ir_reve);while(1){if(IR_ok){Ircordpro();IR_ok=0;}if(IRpro_ok){Ir_work();}}}/********************定时器0中断处理函数********************/ void tim0_isr (void) interrupt 1 using 1{irtime++;}/*******************外部中断0中断处理函数*******************/ void EX0_ISR (void) interrupt 0{static unsigned char i;static bit startflag;if(startflag){if(irtime<63&&irtime>=33)i=0;IRdata[i]=irtime;irtime=0;i++;if(i==33){IR_ok=1;i=0;}}else{irtime=0;startflag=1;}}。
(完整版)基于51单片机的红外遥控器解码设计毕业论文

第1章红外解码系统分析第1节设计要求整个控制系统的设计要求:被控设备的控制实时反应,从接收信号到信号处理及对设备控制反映时间应小于1s;整个系统的抗干扰能力强,防止误动作;整个系统的安装、操作简单,维护方便;成本低。
红外载波、编码电路设计要求:单片机定时器精确产生38KHz红外载波;根据控制系统要求能对红外控制指令信号精确编码并迅速发送。
红外解码电路设计要求:精确接收红外信号,并对所接收信号进行解码、放大、整形、解调等处理,最后输出TTL电平信号;对非红外光及边缘红外光抗干扰能力强。
设备扩展模块设计要求:直流控制交流;抗干扰能力强;反应迅速不产生误动作;能承受大电流冲击。
第2节总体设计方案2.1 方案论证驱动与开关方案一:采用晶闸管直接驱动。
其优点是体积小,电路简单,外围元件少。
但控制电流小,大电流晶闸管成本高,并且隔离性能差。
方案二:采用三极管驱动继电器。
其体积大,外围元件多。
优点是控制电流大,隔离性能好。
根据实际情况,拟采用方案二。
2.2 总体设计框图经过上述方案的分析选择,得出系统硬件由以下几部分组成:电视红外遥控器,51单片机最小系统,接收放大于一体集成红外接收头,1602液晶显示驱动电路。
整体设计思路为:根据扫描到不同的按键值转至相对应的ROM表读取数据。
确认设备及菜单选择键后AT89S2将从ROM读取出来的值,按照数据处理要求从P2.5输出控制脉冲与T0产生的38KHz的载波(周期是26.3μs)进行调制,经NPN三极管对信号放大驱动红外发光管将控制信号发送出去。
红外数据接收则是采用HS0038一体化红外接收头,内部集成红外接收、数据采集、解码的功能,只要在接收端INT0检测头信号低电平的到来,就可完成对整个串行的信号进行分析得出当前控制指令的功能。
然后根据所得的指令去操作相应的用电器件工作,如图1-1所示。
图1-1 电路设计整体框图第2章红外解码硬件电路设计第1节单片机及其硬件电路设计1.1 单片机的介绍AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。
基于51单片机的红外遥控设计-毕业设计论文

摘要很多电器都采用红外遥控,那么红外遥控的工作原理是什么呢?本文将介绍其原理和设计方法。
红外线遥控就是利用波长为0.76~1.5μm之间的近红外线来传送控制信号的。
常用的红外遥控系统一般分发射和接收两个部分。
红外遥控常用的载波频率为38kHz,这是由发射端所使用的455kHz晶振来决定的,在发射端要对晶振进行整数分频,分频系数一般取12,所以455kHz÷12≈37.9 kHz≈38kHz。
也有一些遥控系统采用36kHz、40kHz、56kHz等,一般由发射端晶振的振荡频率来决定。
接收端的输出状态大致可分为脉冲、电平、自锁、互锁、数据五种形式。
“脉冲”输出是当按发射端按键时,接收端对应输出端输出一个“有效脉冲”,宽度一般在100ms左右。
一般情况下,接收端除了几位数据输出外,还应有一位“数据有效”输出端,以便后级适时地来取数据。
这种输出形式一般用于与单片机或微机接口。
除以上输出形式外,还有“锁存”和“暂存”两种形式。
所谓“锁存”输出是指对发射端每次发的信号,接收端对应输出予以“储存”,直至收到新的信号为止;“暂存”输出与上述介绍的“电平”输出类似。
关键词:80c51单片机、红外发光二极管、晶振目录第一章1、引言 (3)2、设计要求与指标 (3)3、红外遥感发射系统设计 (4)4、红外发射电路设计 (4)5、调试结果及分析 (9)6、结论 (10)第二章1、引言 (10)2、设计要求与指标 (11)3、红外遥控系统设计 (11)4、系统功能实现方法 (15)5、红外接收电路 (16)6、软件设计 (17)7、调试结果及分析 (18)8、结论 (19)参考文献附录绪论人的眼睛能看到的可见光按波长从长到短排列,依次为红、橙、黄、绿、青、蓝、紫。
其中红光的波长范围为0.62~0.76μm;紫光的波长范围为0.38~0.46μm。
比紫光波长还短的光叫紫外线,比红光波长还长的光叫红外线。
红外线遥控就是利用波长为0.76~1.5μm之间的近红外线来传送控制信号的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.1系统硬件设计7
3.1.1硬件要求7
3.1.2ቤተ መጻሕፍቲ ባይዱ盘接口9
3.1.3LED显示器10
3.1.4发射部分12
3.1.5接收部分12
3.2系统软件设计13
3.2.1发射部分的工作原理13
3.2.2接收部分工作原理13
3.3遥控系统的编码及解码14
3.3.1遥控发射编码格式14
3.3.2数据帧的接收处理15
关键词:AT89C51芯片;红外遥控开关
ABSTRACT
The design of an infrared remote-control multi-line switch is introduced.This switch is based on principle of infrared remote-control and AT89C51 single chip microcomputer controlling .This system has strongapplicability,flexibility and advancement.People's life is improved greatly by Its apply.Its system composition and design of hardware and software are presented. The basic structure and chart of control decode program are also expounded. In order to achieve exact remote-control, the transmitted signal is divided into 3 parts:the connecting section, the controlling section and the ending section, then the receiver will verify it.The whole system is composed by the launches partially and the receives partially two unches partially including the keyboard matrix,the coded modulation,the LED infrared transmitter;Receives partially including the LED infrared light launch,the demodulation,decodes the electric circuit. It was proved that this kind of remote-control is convenient, reliable and practical after using in remote-control system.
Key words:the chip ofAT89C51; infrared remote-control switch
1绪论1
1.1课题背景1
1.2应用前景1
2总体设计方案3
2.1机型及元器件选择3
2.1.1单片机的选择3
2.1.2AT89C51单片及的硬件结构3
2.2软、硬件功能划分4
2.3总体方案设计5
摘要
本设计是基于红外遥控和AT89C51单片机控制的红外遥控开关,这种系统具有很强的适用性、灵活性、先进性,它的应用大大方便了人们的生活。本文给出了系统的硬件组成和硬软件设计方法,介绍了解码程序的基本结构和程序框图,为达到准确控制,将发射脉冲分为连接段、控制段和结束段等3部分,并再接收端进行校验。整个系统由发射和接收两个部分组成。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括LED红外光、解调、解码电路。系统在实际实用后,证明其方便、可靠并具有实用价值。
一.2应用前景
本次设计是基于单片机的红外遥控开关系统,它在我们的生产和生活中有着很广泛的应用前景。在我们所居住的场所,我们就可以通过红外遥控技术来控制各种电器、仪表、机械等。这种系统具有很强的适用性、灵活性、先进性。它的应用将我们的生活变的更加轻松。大大方便了人们的生活随着信息技术的不断向前发展,一些功能更强的应用系统将出现在我们的各个方面,这将体现着高科技带给人们的无穷魅力。
3.4遥控发射及接收控制程序流程图16
3.4.1遥控发射控制流程图16
3.4.2遥控接收控制流程图17
4系统调试19
5毕业设计总结21
致谢23
参考文献25
附录27
一绪论
一.1课题背景
继1971年微处理器的研制成功不久,就出现了单片机,但最早的单片机是一位的,单片机以其卓越的性能,得到了广泛的应用,已经深入到各个领域。单片机应用在检测、控制领域中,具有以下特点:小巧灵活、成本低、易于产品化。它能方便的组装成各种智能测控设备及各种智能仪表仪器。可靠性好,适合温度范围宽。单片机芯片本身是按工业测控环境要求设计的,分为民用、工业品、军品、其中工业品和军品具有较强的适应恶劣环境的能力。由于单片机本身就是一个计算机系统,因此,只要在单片机的外围适当加一些必要的扩展电路及通道接口,就可以构成各种应用系统,如工业控制系统、数据采集系统、自动测试系统、检测监视系统、智能仪表、功能模块等。单片机的应用领域十分广泛,自20世纪80年代以来,单片机的应用已经深入到工业、农业、国防、科研、机关、教育、商业以及家电、生活、娱乐、玩具等各个领域中。
二总体设计方案
二.1机型及元器件选择
此次设计所采用的单片机的名称是AT89C51,用其控制红外信号。在发射部分的电路中我所采用的元器件有AT89C51芯片、发光二极管、三极管、警惕振荡器等。在红外接收部分采用的元器件有LED数码管显示器、红外接收器ST188等。
二.1.1单片机的选择
单片机的主要性能指标有【1,2】:字长、主频、指令执行时间、电源功耗等。选择单片机不仅要考虑其主要的性能指标,更要考虑单片机的中断能力、接口、片内存储器大小、抗干扰能力等。本次设计所选的单片机为AT89C51,AT89C51单片机的引脚结构图如图2-1所示。