单片机红外遥控系统设计 初稿.docx

上传人:b****4 文档编号:24230619 上传时间:2023-05-25 格式:DOCX 页数:31 大小:396.88KB
下载 相关 举报
单片机红外遥控系统设计 初稿.docx_第1页
第1页 / 共31页
单片机红外遥控系统设计 初稿.docx_第2页
第2页 / 共31页
单片机红外遥控系统设计 初稿.docx_第3页
第3页 / 共31页
单片机红外遥控系统设计 初稿.docx_第4页
第4页 / 共31页
单片机红外遥控系统设计 初稿.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

单片机红外遥控系统设计 初稿.docx

《单片机红外遥控系统设计 初稿.docx》由会员分享,可在线阅读,更多相关《单片机红外遥控系统设计 初稿.docx(31页珍藏版)》请在冰豆网上搜索。

单片机红外遥控系统设计 初稿.docx

单片机红外遥控系统设计初稿

存档编号:

毕业论文(设计)

基于单片机的红外线遥控系统

 

专业:

电子信息工程

院系:

电子工程系

年级:

电子Q0741

学号:

070604003

姓名:

陈政

指导教师:

陈莹

教师职称:

讲师

 

湖北经济学院教务处制

湖北经济学院本科毕业(设计)论文

摘要

随着社会的发展、科技的进步以及人们生活水平的逐步提高,各种方便于生活的遥控系统开始进入了人们的生活。

传统的遥控器采用专用的遥控编码及解码集成电路,这种方法虽然制作简单、容易,但由于功能键数及功能受到特定的限制,只实用于某一专用电器产品的应用,应用范围受到限制。

而采用单片机进行遥控系统的应用设计,具有编程灵活多样、操作码个数可随便设定等优点。

本设计主要应用了AT89C2051单片机作为核心,综合应用了单片机中断系统、定时器、计数器等知识,应用红外光的优点。

遥控操作的不同,遥控发射器通过对红外光发射频率的控制来区别不同的操作。

遥控接收器通过对红外光接收频率的识别,判断出控制操作,来完成整个红外遥控发射、接收过程。

其优点硬件电路简单,软件功能完善,性价比较高等特点,具有一定的使用和参考价值。

关键词:

单片机,红外遥控,中断,定时,计数,频率

 

Abstract

Withthedevelopmentofoursocietyandthegradualimprovementofscienceandtechnology,variouskindsofhelpremotecontrolsystemshavebegantoenterpeople’slife.Thetraditionalremotecontrollersadoptspecialremotecontrolcodeanddecodeintegratedcircuits,thoughthiskindofmethodissimplyandeasily,itisonlythepracticalapplicationofsomecertainspecialelectricequipmentsbecauseofthecountedfunctionalkeysiscountedandtherestrictedfunction,sotherangeofapplicationislimited.Buttheremotecontrollerswhichadoptthemicroprocessorshavemanyadvantagessuchasflexibleoperatingandunceremoniousmanipulativekeys.

ThedesignhasusedAT89C2051microprocessorascore,integrativelyapplytheinterruptivesystem,timer,counter,etc.mainlytodesignoriginallyandalsotaketheadvantageoftheinfraredlight.Theremotecontrollauncherdistinguishesdifferentoperationthroughthecontrolonfrequencyofinfraredemissionoflight.Theremotecontrolreceiverjudgescontroloperationbyadoptingthediscernedfrequencyofthereceivedinfraredlighttofinishthewholelaunchingandreceivingcourse.

Itsadvantageisthatthehardwarecircuitissimple,thesoftwareiswithperfectfunction,havecertainuseandreferencevalue

 

Keywords:

Microprocessor,Infraredremotecontrol,Interrupt,Timing,Counting,Frequency

 

一、前言

(一)设计任务

以AT89C2051单片机为核心设计控制器件设计控制器件的红外发生接受系统,包括红外收发模块的设计制作,硬件电路部分的软件程序编写以及整机调试,实现信号的传输。

二、基本要求

发射载频38HZ电源9V/0.2A5V/0.1A工作温度;—40°——+85°接受范围:

2m传输速率:

27bit/s反应时间:

2ms。

(二)文献综述

随着科技的发展,人们生活的节奏也越来越快,随之人们对方便,快捷的要求也随之不断增高!

遥控器的出现,在一定程度上满足了人们这个要求!

红外遥控是20世纪70年代才开始发展起来的一种远程控制技术,其原理是利用红外线来传递控制信号,实现对控制对象的远距离控制,具体来讲,就是有发射器发出红外线指令信号,有接收器接收下来并对信号进行处理,最后实现对控制对象的各种功能的远程控制。

无线遥控方式可分为无线电波式、声控式、超声波式和红外线式。

由于无线电式容易对其它电视机和无线电通讯设备造成干扰,而且,系统本身的抗干扰性能也很差,误动作多,所以未能大量使用。

超声波式频带较窄,易受噪声干扰,系统抗干扰能力差以及声控式识别正确率低,难度大而未能大量采用。

红外遥控方式是以红外线作为载体来传送控制信息的,同时随着电子技术的发展,单片机的出现,催生了数字编码方式的红外遥控系统的快速发展。

另外,红外遥控具有很多的优点,例如红外线发射装置采用红外发光二极管,遥控发射器易于小型化且价格低廉;红外遥控具有独立性、物理特性与可见光相似性、无穿透障碍物的能力及较强的隐蔽性等特点。

随着红外遥控技术的开发和迅速发展,很多电器都应用了红外遥控。

从单纯的在电风扇面板上通过按钮控制,到短距离(10M以内)的遥控,虽然改变不大,但其带来的便利无疑是巨大的。

采用数字信号编码和二次调制方式,不仅可以实现多路信息的控制,增加遥控功能,提高信号传输的抗干扰性,减少误动作,而且功率消耗低;红外线不会向室外泄露,不会产生信号串扰;反应速度快、传输效率高、工作稳定可靠等。

所以现在很多无线遥控方式都采用红外遥控方式。

目前市场上一般采用的遥控编码及解码集成电路。

此方案具有制作简单、容易等特点,但由于功能键数及功能受到特定的限制,只适合用某一专用电器产品的应用,应用范围受到限制。

而采用单片机进行遥控系统的应用设计,具有编程灵活多样、操作码个数可随意设定等优点。

本单片机遥控应用系统采用红外线发射频率的不同,来识别不同的遥控功能。

当我们按下某一个按键的时候,由单片机识别出该按键后,由CPU向接有红外发射管的端口发射一定频率的脉冲,该脉冲与38KHz左右的载波脉冲进行调制,然后将已调制的脉冲进行缓冲放大,激励红外发光二极管将电能转化为光能,使得红外发光二极管发射出一定频率的红外线,当接收控制系统接收到该红外光后,由单片机内定时/计数器得到该红外光的频率,然后将该频率送往CPU,由CPU对该信号进行反编码,识别出控制信号,从而对控制电路实施控制功能。

完成整个遥控功能。

当今红外技术的一个重要分支是红外通信技术的应用,这个应用的发展非常迅速,尤其是红外通信应用于计算机设备中,近几年的发展已经表现出其非常成熟的特性。

因此,加大对红外线遥控系统的研究,是符合实际要求的。

未来的红外遥控系统,在成本允许的情况下,可以将更好、更新的技术应用到其中,不断提高服务功能和智能化水平,令人民生活水平进一步提高。

基于单片机的红外线遥控系统力求概念清楚,层次分明,经过大量翻阅工作,了解设计基本过程,结合自己设计的原始资料,从而进一步指导设计内从的开展。

主要是通过查阅馆藏书籍,课本和网络资源。

在本次设计开始时首先是从网上看了现成的关于红外遥控设计的文章,根据其原理从而确定了自己的设计。

红外遥控系统由两大部分组成,发射部分和接收部分。

从《单片机原理及接口技术》、《单片机课程设计实例指导》、《MCS-51系列单片机原理与设计》、《MCS-51系列单片机存储容量扩展的软硬件设计》等等与单片机相关的书籍上面学习到了单片机的有关基础知识。

包括MCS-51系列单片机组成特点发展、引脚功能、内部结构、储存器配置以及指令系统。

并从《单片微型计算机原理及接口技术》这本书中知道了单片机应用系统设计的流程。

此后我又对通信基础知识进行了学习,参看了《学习型红外遥控器.》、《多功能红外线遥控器的设计》、《自动化与仪器仪表》、《红外线遥控的基本原理和应用范围》等资料,确定了红外遥控调制的编码方式、调制方式、编码标准、编码格式等。

发射电路以AT89C51单片机为核心,外接红外发射器,按键,电源采用5V电源。

“0”和“1”组成的32位二进制码经38KHz的载频进行二次调制以提高发射频率,达到降低电源功耗的目的。

然后再通过红外发射二极管发射。

二、系统设计方案论证

(一)设计目的与原理

目前市场上一般采用的遥控编码及解码集成电路。

此方案具有制作简单、容易等特点,但由于功能键数及功能受到特定的限制,只适合用某一专用电器产品的应用,应用范围受到限制。

而采用单片机进行遥控系统的应用设计,具有编程灵活多样、操作码个数可随意设定等优点[6]。

本单片机遥控应用系统采用红外线发射频率的不同,来识别不同的遥控功能。

当我们按下某一个按键的时候,由单片机识别出该按键后,由CPU向接有红外发射管的端口发射一定频率的脉冲,该脉冲与38KHz左右的载波脉冲进行调制,然后将已调制的脉冲进行缓冲放大,激励红外发光二极管将电能转化为光能,使得红外发光二极管发射出一定频率的红外线[7],当接收控制系统接收到该红外光后,由单片机内定时/计数器得到该红外光的频率,然后将该频率送往CPU,由CPU对该信号进行反编码,识别出控制信号,从而对控制电路实施控制功能。

完成整个遥控功能[8]

(二)单片机红外遥控发射器设计原理

单片机红外遥控发射器主要有单片机、行列式键盘、低功耗空闲方式控制电路、红外管发射电路以及单片机的一些电源、复位、震荡子电路组成[9]。

单片机不工作时一直处于低功耗状态,采用了空闲节电工作方式。

当遥控器的某一按键被按下以后,外部中断1产生中断,唤醒单片机进入工作状态,查询键盘按下的是哪一个按键,当确认按键后,控制软件启动定时器T0、T1,T1作为发射时间控制器,T0作为红外线发射频率控制器,T0定时溢出时中断程序使红外管接口电平反转一次,写入定时器的初值不同,在输出端口就得到不同的发射频率。

T1定时溢出时中断程序关闭关闭T0定时器,停止红外线发射[10]。

其设计原理框图如下。

 

图2.1单片机遥控发射器设计原理图

(三)单片机红外遥控接收器设计原理

单片机红外遥控接收器主要有单片机、红外遥控接收电路、状态指示电路、控制电路以及单片机的一些外围电路组成。

利用单片机中的T0作为红外脉冲计数器,T1作为计数时间控制器。

当电路中红外接收管接收到第一个红外脉冲时,外部中断1被触发,启动计数器T0和定时器T1。

定时溢出,中断程序关闭计数器T0,读入计数值并进行判断,确定操作对象(遥控按键)对其进行反转操作,控制电路对所控制的负载进行开或关[11]。

还可对接收电路实行上锁功能,对控制电路上锁后,遥控器不能对控制电路实施遥控功能[8]。

其设计原理方框图如下:

 

图2.2红外接收遥控电路原理框图

三、系统硬件电路设计

(一)有关AT89C2051单片机的介绍

AT89C2051是一个低电压,高性能CMOS8位单片机。

片内含有2KB可反复擦写的只读存储器(EPROM)和128B的随机存取存储器(RAM),器件采用ATMEL的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储器,功能强大。

(二)独立式按键结构

独立式按键是指直接用I/O线构成的单个按键电路,每个独立式按键占有一根I/O口线,每根I/O口线上的按键的工作状态不会影响其他I/O口线的工作状态,其结构简单,但I/O口线浪费较大[16]。

独立式按键配置灵活,软件结构简单,上拉电阻保证了按键断开时,I/O口线有确定的高电平,其电路原理图如下

图3.2独立式按键电路

(三)复位电路

计算机在启动时,系统进入复位状态。

在复位状态,CPU和系统都处于一个确定的初始状态或成为原始状态,在这种状态下,所有的专用寄存器都赋予默认值。

其复位状态见下表。

 

专用寄存器

复位状态

专用寄存器

复位状态

PC

ACC

B

PSW

SP

DPTR

P0—P3

IP

IE

0000H

00H

00H

00H

07H

0000H

FFH

XXX00000B

0XX00000B

TMOD

TCON

TH0

TL0

TH1

TL1

SCON

SBUF

PCON

00H

00H

00H

00H

00H

00H

00H

XXXXXXXXB

0XXX0000B

表3.1复位状态各寄存器初值

(四)红外发射电路的设计

根据红外发射管本身的物理特性,必须要有载波信号与即将发射的信号相“与”,然后将相“与”后的信号送发射管,才能进行红外信号的发射传送,而在频率为38KHz的载波信号下,发射管的性能最好,发射距离最远,所以在硬件设计上,本设计采用38KHz的晶振产生载波信号,与发射信号进行逻辑“与”运算后,通过三极管的功率驱动到红外发光二极管上[18]。

红外发送电路由4001MOS或非门38KHz振荡器,单片机发送控制电路和红外发送管驱动输出电路组成,当单片机P3.4口输出为“0”时,发射管不发光,当单片机P3.4口输出为“1”时,红外发送管发出38KHz调制红外线[19]。

具体的发射波形与电路如下

图3.7调制过程中的波形

图3.8红外发射电路

(五)红外接收电路的设计

红外接收电路专门采用集成电路RPM6938,RPM6938有三个引脚,一个接电源一个接地,另外一个接信号端,它集光电转换,解调和放大于一体[20]。

当收到38KHz调制红外线时,RPM6938输出为“0”,平时输出为“1”。

信号脚接到P3.3和P3.4脚上,当RPM6938收到第一个红外脉冲时,触发INT1产生中断,使单片机退出低功耗状态,进入工作状态,同时使记数器0和定时器1开始工作[21]

图3.9红外接收电路

(六)完整的系统电路设计图

完整的电路图见附录A

 

 

四、系统软件设计

(一)遥控发射器程序设计

4.1.1程序总体结构

此系统是一个红外遥控发射器,设计目的就是根据按键的不同,发射出不同的红外信号。

传统的遥控器都是采用遥控发射专用集成芯片,例如飞利浦公司生产专用芯片SAA3010,三菱公司生产的M50462P专用发射芯片。

由于这些芯片的功能键数及功能受到特定的限制,只适合于某一专用电器产品的应用,应用范围受到限制。

本系统采用单片机制作,采用编程的方法,由于编程具有灵活性,故应用范围较广,操作码可随意设定[22]。

本系统采用的是按红外发射频率的不同,来识别不同的按键。

操作键设定为8个,K0至K7,分别接至单片机的P1.0至P1.7口。

对应的红外发射频率分别为300Hz、600Hz、900Hz、1200Hz、1500Hz、1800Hz、2100Hz、2400Hz。

发射时间确定为一个定值,由定时器1来定时,时间为100ms,当100ms时间到定时器1发生中断,停止计时,红外光也停止发射。

由定时/计数器0来控制发射频率,T0作为定时器,当T0定时时间到,中断程序使P3.4断口的电平反转一次,然后T0重新工作定时值与前相同,时间到中断程序使P3.4端口翻转一次,如此往复,红外信号就按一定的时间间隔发射出去。

通过设定T0的定时时间来控制红外信号的发射频率[23]。

平时遥控器工作在空闲方式下,当有键按下时,由外部中断1产生中断,使CPU回到工作状态,待执行完操作后又回到低功耗才状态。

主程序主要由初始化程序、键盘扫描程序,定时器0中断服务程序、定时器1中断服务程序,外部中断1中断服务程序组成。

主程序流程图如下:

 

 

NNN…

 

YY

Y

.……

…N

Y

 

N

YN

 

Y

 

图4.1遥控发射主程序流程图

当K2至K7键按下时,执行的程序类似于按下K1键所执行的程序。

4.1.2伪指令和初始化程序

在初始化程序前,需要定义一些相关的伪指令,伪指令不能命令CPU执行某中操作,也没有对应的机器代码,它的作用仅用来给汇编程序提供某中信息。

伪指令是汇编程序能够识别的汇编命令。

控制信号的输入口P1.0—P1.7分别用按键开关键号K0—K7来定义;各频率红外信号对应的定时器T0的初值分别用K0H、K0L——K7H、K7L来定义,这样做不影响整个程序的执行,但便于阅读和理解程序。

定义格式如下:

K0BITP1.0…K7BITP1.7

由于P1.0至P1.7对应的红外发射频率分别为300Hz、600Hz、900Hz、1200Hz、1500Hz、1800Hz、2100Hz、2400Hz,而T1的定时时间是50ms故在这七种状态下面,P3.4端口状态分别反转15次、30次、45次、60次、75次、90次、105次、120次。

故定时器T0对应的定时时间分别为50ms/15、50ms/30、50ms/45、50ms/60、50ms/75、50ms/90、50ms/105、50ms/120,即分别为:

3.33ms、1.67ms、1.11ms、0.833ms、0.667ms、0.556ms、0.476ms、0.417ms。

由前述定时器初值计算方法可算出各状态定时器的初值。

定时器T1的定时初值计算如下:

由于工作在方式一,时钟频率为12MHz,故定时最大值M为65536

初值X=M—定时值/T

X=65536—50000/1=15536

即T1的初值为15536,转化为十六进制为3CB0H

各情况下,定时T0的定时初值计算如下:

当按下K0键时,定时时间为3.33ms,此时定时器初值为

X0=65536—3330/1=62206

转化为十六进制为0F2FEH

当按下K1键时,定时时间为1.67ms,此时定时器初值为

X1=65536—1670/1=63866

转化为十六进制为0F97AH

当按下K2键时,定时时间为1.11ms,此时定时器初值为

X2=65536-1110/1=64426

转化为十六进制为0FBAAH

当按下键K3时,定时时间为0.833ms,此时定时器初值为

X3=65536-833/1=64703

转化为十六进制为0FCBFH

当按下键K4时,定时时间为0.667ms,此时定时器初值为

X4=65536-667/1=64869

转化为十六进制为0FD65H

当按下键K5时,定时时间为0.556ms,此时定时器初值为

X5=65536-556/1=64980

转化为十六进制为0FDD4H

当按下键K6时,定时时间为0.476ms,此时定时器初值为

X6=65536-476/1=65060

转化为十六进制数为0FE24H

当按下键K7时,定时时间为0.417ms,此时定时器初值为

X7=65536-417/1=65119

转化为十六进制数为0FE5FH

4.1.3键盘扫描程序

键盘扫描程序就是扫描键盘看是否有键按下,如有键按下,判断出是哪一个键,当确定按下某一个键后,即执行红外发射程序。

扫描的方法是判断P1口各位的电平,无按键按下时,各位均为高电平,当某一个按键按下以后,该位即为低电平。

通常,按键所用开关为机械弹性开关,均利用了机械触点的合、断。

一个电压通过机械触点的断开、闭合过程,由于机械触点的弹性作用,一个按键开关在闭和时不会马上稳定接通,在断开时也不会一下断开。

因而,在闭合和断开的瞬间均伴随着一连串的抖动,抖动时间的长短由按键的机械特性决定,一般为5—10ms。

按键电路的消抖措施通常有硬件和软件两种方法[24]。

硬件消除键盘抖动措施主要就是外加双稳态电路或者滤波电路的方法。

本电路采用的是软件消抖的方法,就是调用一个延时子程序,延时时间设定为6ms。

延时时间的计算就是根据执行指令所需时间的总和,0CH、0FFH分别为十进制数的12和255,因此这个程序所耗用的时间为

1+(255*2+2+1)*12+1+2=6160个机器周期

由于晶振采用的是12MHz,所以1机器周期=1us,执行程序的总时间为6.16ms,与6ms存在0.16ms的误差,不过这不影响程序的执行。

4.1.4中断服务程序

1.外部中断1

外部中断1在程序中的作用就是唤醒单片机,使单片机从空闲方式回到工作状态。

当有键按下时,通过与门触发外部中断1中断,IDL被硬件硬件清零,单片机结束低功耗空闲节电方式[25]。

外部中断是由外部原因引起的,共有两个中断源,即外部中断0和外部中断1,相应的中断请求信号输入端是INT0和INT1。

外部中断请求有两种触发方式,即电平触发方式和脉冲出发方式。

定时器/计数器控制寄存器TCON的低四位用于控制外部中断请求和触发方式,有关的位表示如下:

IE:

外部中断请求标志位,当CPU采样到INT端出现有效的中断请求时,次位由硬件置1,表示外部事件请求中断,中断响应完成后,再由硬件自动清零。

IT:

外部中断请求触发方式控制位。

当IT=1,选择脉冲触发方式(也称边沿触发方式)负跳变有效;当IT=0,选择电平出发方式,低电平有效。

中断的允许或禁止是由片内的中断允许寄存器IE控制的。

IE的格式如下:

EA

ET2

ES

ET1

EX1

ET0

EX0

IE的每一位都可以由软件置1或清零。

且1——中断允许,0——中断屏蔽

EA:

中断允许总控制位。

EA=0时,表示CPU禁止所有中断,即所有的中断请求被屏蔽;EA=1时,表示CPU开放中断,但每个中断源的中断请求是允许还是禁止,要由各自的允许位控制。

EX:

外部中断允许控制位

ET:

外部中断允许控制位。

ET:

定时/计数器的中断允许控制位

ES:

串行中断允许控制位。

中断的各控制位在初始化程序中定义,在初始化程序中应当开外部中断1和总中断,触发方式选择为脉冲触发方式,后负跳变有效。

2.定时器中断服务程序

定时器T1作为发射时间控制器,当确认某一按键被按下后,T1开始记时,记时时间为50ms,记时时间到,定时器1产生中断,红外脉冲停止发射。

同时将红外脉冲发射端口P3.4电平置成无效电平

定时器T0作为红外线发射频率控制器,当定时时间到产生中断,将P3.4端口反转一次,同时对定时器重新装初值,定时时间与前相同,T0重新定时,时间到又将P3.4端口反转一次,如此往复

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1