千千娱乐
您的当前位置:首页2021年度红外遥控论文

2021年度红外遥控论文

来源:千千娱乐




摘 要

现在,电风扇使用十分广泛,面对庞大市场需求,我们需要提升电风扇市场竞争力,使之不仅功效多样、安全可靠,而且操作简便;而单片机因其高可靠性和高性价比,在智能化家用电器、仪器仪表等很多领域得到了极为广泛应用。所以,基于单片机技术设计一款电风扇遥控开关是大有必需,不仅方便而且智能化。本设计是基于STCC52单片机控制智能电风扇遥控开关,巧妙地利用红外线遥控技术、单片机控制技术、液晶显示电路,含有一定遥控距离、4级调速、停止、定时等功效,同时LCD128液晶显示遥控开关状态、LED显示接收端即电风扇状态。

关键词:STCC52;LCD128; 遥控开关;电风扇




Abstract

Currently,the use of electric fans is very extensive. In the face of the hugemarket demand, we need to improve the market competitiveness of thefans, so that they are not only versatilesafereliable,but also easy to operate; yet the microcontroller because of its highreliability and cost-effective, has been very widely used inintelligent household appliancesinstrumentsand many other areas.

Therefore,we design a remote fan switch based on MCU technology is very
necessary,it’s not only convenient but also intelligent. The design of smartfan remote
controlswitch based on the STCC52 microcontroller-controlled, clever usesof
infraredremote control technologyMCUcontrol technologyliquidcrystal
displaycircuit, has a certain distance of the remote control4speedstoptiming
etc.At the same time, the LCD128 displays the status of the remotecontrol switch, and the LED displays the receiving end that thestatus of the fan.




目录

摘要..........................................................................................................................IAbstract........................................................................................................................II1 概述..............................................................................................................1 1.1电风扇遥控开关背景及意义.........................................................................1 1.2电风扇遥控开关中国外现实状况.................................................................2 1.3本文研究关键内容.........................................................................................22
系统体系结构..............................................................................................4 2.1设计方案.........................................................................................................4 2.2系统整体框图设计.........................................................................................4

3.1最小系统模块.................................................................................................6
3 系统硬件设计..............................................................................................6

3.4LCD128液晶显示模块...............................................................................9
3.5红外遥控接收模块.......................................................................................10
3.6定时模块.......................................................................................................11
3.7指示灯模块...................................................................................................12
3.8直流电机模块...............................................................................................13
3.9电源模块.......................................................................................................14
4
系统软件设计............................................................................................16 4.1红外发射及接收工作原理...........................................................................16
4.1.1红外发射工作原理..............................................................................16
4.1.2红外接收工作原理..............................................................................17
4.2红外发射及接收程序步骤图.......................................................................17



4.2.1红外发射程序步骤图..........................................................................17 4.2.2红外接收程序步骤图..........................................................................185 系统调试....................................................................................................20 5.1系统调试结果...............................................................................................20 5.2调试过程总体分析.......................................................................................236 总结和展望................................................................................................25参考文件......................................................................................................................26附录............................................................................................................................28致谢............................................................................................................................36





1章概述

1.1 电风扇遥控开关背景及意义

作为一个老牌电器,电风扇含有价格廉价、摆放方便、使用灵活等特点。

即使现在空调在城市中已经相当普遍,并有替换电风扇趋势,但因为使用空调时空气不通畅,轻易得空调病,而且价格相对较高;冷风机能增加空气湿度,但使用久了,家里电器会受潮,同时也会使关节受到伤害;蒲扇和纸扇价格低廉,但不是自动;而电风扇不仅价格低廉,而且是自动,吹出又是舒适自然风,现在使用极为广泛,作为成熟家电行业一员,尤其在中小城市和乡村仍占有市场大部分份额。

市场需求促进了电风扇发展,伴随“智能化”兴起,大家生活水平提升,对物质有了深入要求,尤其是电子产品,大家对其有了新要求,期望她们有着节能、
设计一款电风扇遥控开关添加了部分人性化设计,将大大提升电风扇市场竞争力。
电风扇遥控开关使用红外遥控,是现在使用最广泛一个通信和遥控手段。

红外遥控含有抗干扰能力强、不影响周围环境,且不会对周围电器设备产生干扰电波,同时红外发射接收有范围窄、安全性高等优点,所以红外遥控开关使用将越来越普遍。

伴随红外遥控技术开发和快速发展,很多电器全部应用了遥控开关,电风扇应该也不例外。在现实生活中,遥控开关在使用过程中,因为其无法穿透墙壁,故不一样房间其同一厂商家用电器可使用通用遥控器而不产生相互干扰;电路调试简单,只要按给定连接无误,通常无需任何调试即可投入工作, , 路遥 [1-3]



市场上红外线遥控开关装置通常采取专用遥控编码及解码集成电路,其灵活性低、应用范围有限。而采取单片机进行红外遥控开关系统应用设计,此红外遥控装置将同时含有编程灵活、控制范围广、体积小、功耗低、功效强、

,

所以采取单片机红外遥控开关技术含有宽广发展前景[4,5]

1.2 电风扇遥控开关中国外现实状况

19,

发明者杨济川在上海四川路横浜桥创办生产变压器工厂,以“中华民族更生”之意,取名为华生电器制造厂,1925年华生风扇正式投产,很快成为著名品牌。

不管是城市还是农村,电风扇普及率全部比较高,产量超出1亿台,除了中国外市场外,还大批量出口到世界各地,占全球市场绝大部分份额。因为电风扇结构较为简单,技术含量相对较低,市场上品牌较多,关键产地集中在华南和江浙地域,

现在,电风扇是夏季家庭必备电器设备之一。在家电市场上,多种规格、

广

伴随中国科学技术发展和人民生活水平快速提升,电风扇品种也开始日益丰富,健康多功效、时尚新外观等特点成为实现市场突破关键条件,如遥控负离子风扇、氧吧灭蚊风扇、集成吊顶风扇等等,满足现代人健康时尚、个性化和多功效多种需求,不停涌现新产品让电风扇这种“老家电”焕发出新活力。

,

,

电风扇不仅从外型到控制方法全部有了不少改变。扇叶材料也从最开始金属材质换成塑料材质;开关从开始旋钮、 按钮控制方法到以后触摸式操作,从之前固定式换成可移动式,



从单一遥控器到万能及学习型遥控器。

近几年来,电风扇发展速度很快,伴随电子技术发展,电风扇不停向高级次、电子控制发展。所以,电风扇遥控开关设计含有十分关键意义。遥控器开关是真正最早进入家庭无线设备,它是由高产发明家RobertAdler在五十年代发明。市场中电风扇遥控器较多采取红外遥控,红外遥控是20世纪70年代才开始发展起来一个远程控制技术,即使RF遥控器也越来越普及,不过其成本较高、无线规格烦杂[6,7]

1.3 本文研究关键内容

多年来,伴随计算机在社会领域渗透,单片机应用正在不停走向深入,以单片机为关键遥控开关设备应用越来越广泛。

本文设计电风扇遥控开关,是基于单片机设计制作智能电风扇遥控开关,STCC52单片机为关键,和传统电风扇开关相比,此开关功效愈加强大,
具体要求实现以下功效:
2)其中四个按键开关分别对应于电风扇四档调速功效,即弱风、中风、强风、超强风,风力大小能够依据需要自行选择;
3)一个按键对应于电风扇停止功效,能够控制电风扇停止;
4)另外三个按键对应于电风扇定时功效,一个是+1,一个是-1,另一个是确定键,比如当按一下+1,然后按确定键,电风扇将定时1分钟,1分钟以后电风扇将会自动停止;
4LCD128液晶显示遥控开关状态,当电源打开,液晶显示“开启”;

,

,

即显示“1档”或“2档”或“3档”或“4档”或“ 停止” 或“ 定时XXX 分钟”或“确定XXX分钟”;



5)利用LED作为指示灯,显示接收端电风扇(直流电机)运行状态;当电风扇第1档运行时,LED第一盏灯亮,2档运行时,LED第二盏灯亮,其它类推;停止时,LED全灭;





2章系统体系结构

2.1 设计方案

本设计是基于单片机智能电风扇遥控开关设计,该设计以STCC52单片机为关键,24键盘作为遥控开关,含有一定遥控距离、4级调速、遥控停止、定时等功效,同时LCD128液晶显示遥控开关状态、LED显示接收端即直流电机状态。

2.2 系统整体框图设计

电风扇遥控开关采取STCC52单片机为关键电路来实现,其总体系统结构框图包含红外发射框图和红外接收框图两部分。

该按键电路是24键盘,用于红外遥控器开关按键,分别对应于四级调速(1档、
红外发射框图图2.1所表示,关键包含按键电路、发射电路和显示电路,

红外接收框图图2.2所表示,关键包含接收电路、直流电机、定时电路和指示灯,红外接收器使用一个集红外线接收和放大于一体一体化红外线接收头(VS1838B,定时使用DS12C887实时时钟芯片,直流电机模拟电风扇功效,同时指示灯显示直流电机状态。

发射电路

按键电路 STCC52

显示电路

2.1红外发射框图



直流电机

接收电路

STCC52

定时电路

指示灯

2.2红外接收框图





3章系统硬件设计

电风扇红外遥控开关基础功效设计关键分为九个部分,包含最小系统模块、按键模块、红外遥控发射模块、LCD128液晶显示模块、红外遥控接收模块、定时模块、指示灯模块、直流电机模块和电源模块,其具体介绍以下所表示。

3.1 最小系统模块

单片机最小系统原理图图3.1所表示,由关键芯片STCC52、复位电路及晶振电路组成。


3.1单片机最小系统
STCC52单片机是一个高性能、低功耗CMOS控制器,MCS-51指令系统兼容。在单芯片上,拥有灵巧8CPU8K在系统可编程Flash存放器,为很多嵌入式控制应用提供了很灵活而又价格适宜方案,而且其性能价格比远高于同类芯片。它含有以下标准功效:8K字节Flash,512字节RAM,32 I/O口线,看门狗定时器,内置4KBEEPROM, MAX810复位电路,216位定时器/计数器,一个6向量2级中止结构,全双工串行口。另外STCC52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU 停止工作,许可RAM、定时器/计数器、串口、中止继续工作。掉电保护方法下,RAM内容被保留,振荡器被冻结,单片机一切工作停止,



直到下一个中止或硬件复位为止。最高运作频率35MHz,6T/12T可选[8]

电容和晶振和单片机引脚XTAL1XTAL2相连组成外接晶振电路。STCC52单片机内部有一个用于组成振荡器高增益反相放大器,引脚XTAL1XTAL2分别是此放大器输入和输出端。在XTAL1XTAL2两端跨接晶体就组成了稳定自激振荡器,其发出脉冲直接送入内部时钟电路,为单片机工作提供时序。而XTAL1端和XTAL2端将电容C和内部反相放大器连接起来组成并联谐振电路,对频率有微调作用。

STCC52单片机有一个复位引脚,复位条件是:在时钟电路工作后,当外部电路在RST引脚施加连续2个机器周期以上高电平时,使系统复位。通常情况下,只要保持正脉冲宽度为10微秒,就可使单片机安全复位。本系统采取按键手动复位,在上电瞬间,RST引脚电位和VCC相同,伴随电容上充电电压增加,RST引脚电位逐步下降。在单片机运行期间,按下按键电容瞬间放电,RST引脚电位和VCC相同,系统复位;伴随按键断开,

3.2 按键模块

按键在系统中就是一个开关作用。在本系统中需要按键不多,但单片机I/O口数还是能够满足,所以采取了24式按键。

I/O

线

,

其特点是每个按键单独用一根I/O口线,每个按键工作不会影响其它I/O口线状态,3.2所表示。式按键电路配置灵活,软件结构简单,但每个按键必需占用一根I/O口线。所以,在按键较多时,I/O口线浪费较大,不宜采取。按键均低电平有效,另外,上拉电阻确保了按键断开时,

I/O口线有确定高电平。




机械式按键在按下或释放时,因为机械弹性作用影响,通常伴随有一定时间触点机械抖动,然后其触点才稳定下来,抖动时间长短和开关机械性相关,通常为5~10ms

在触点抖动期间检测按键通和断状态,可能造成判定犯错,即按键一次按下或释放被错误地认为是数次操作,这种情况是不许可出现。

为了克服按键触点机械抖动所致检测误判,必需采取去抖动问题。

常见去抖动方法有两种:硬件方法和软件方法。在键数较少时,能够采取硬件去抖,在键数较多时,采取软件去抖。在硬件上可采取在键输出端加R-S触发器(双稳态触发器)或单稳态触发器组成去抖动电路。

软件上采取方法是在检测到有按键按下时,实施一个延时程序后,再确定该键电平是否仍保持闭合状态电平,若仍保持闭合状态电平,则确定该键处于闭合状态。同理,在检测到该键释放后,也应采取相同步骤进行确定,从而可消除抖动影响。单片机中常见软件法,所以在硬件方面将不做处理。本设计,按键接在单片机P0口。

3.2按键原理图

3.3 红外遥控发射模块

红外遥控发射器因为其电路简单、工作稳定可靠、功效齐全、操作方便、
不产生辐射等优点,已成为遥控发射主流,被广泛应用在家用电器产品上。



红外发射部分由24键盘、编码调制、发射电路等几部分组成。当按下指令键时,

指令编码电路产生所需指令编码信号,指令编码信号和38KHZ载波进行调制,

由发射电路向外发射经调制指令编码信号,示意图图3.3所表示。

红外遥控发射电路就是采取红外发光二极管发出经过调制红外光波,

其电路图图3.4所表示。指令编码信号和38KHZ载波经过74HC08和门进行调制。

74HC08是一款高速CMOS器件,74HC08引脚兼容低功耗肖特基TTLLSTTL)系列,

实现2输入和门功效。其关键特征以下:1)兼容JEDEC标准no.8-1A;

2ESD保护:HBM EIA/JESD22-A114-A超出V,MM EIA/JESD22-A115-

A超出200V;3)温度范围:-40~+85摄氏度,-40~+125摄氏度。

,

因为发送信号时最大平均电流需几十mA(对应mW级发射功率),

所以需要三极管放大后去驱动红外发射二极管。

在它两脚加上电压就能发出不一样颜色可见光。红外发射二极管体积小、功耗低、 体材 料制 ,

键盘编码调制 发射电路

3.3红外发射示意图

3.4发射电路



3.4 LCD128液晶显示模块

,

LCD

Liquid

Crystal

Display

,

是一个液晶利用光调制受光型显示器件。LCD可分为段位式LCD

LCD

LCD

,

段位式LCD和字符式LCD只能用于字符和数字简单显示,不能满足图形曲线和汉字显示要求;而点阵式LCD不仅能够显示字符、数字,还能够显示多种图形、曲线及汉字,而且能够实现屏幕上下左右滚动、动画功效、分区开窗户、反转、闪烁等功效。

LCD特点关键是体积小、形状薄、重量轻、耗能少(110微瓦/平方厘米)、低发烧、工作电压低(1.56伏)、无污染,无辐射、无静电感应,尤其是视域宽、显示信息量大、无闪烁,并能直接和CMOS集成电路相匹配,

仪表和低功耗电子产品中[11]
而且还是真正“平板”式显示设备,近几年来被广泛用于单片片剂控制智能仪器、

256点阵显示RAMGDRAM,配置LED背光,多个软件功效(光标显示、画面移位、自定义字符、睡眠模式等)。

关键技术参数以下:
电源:VDD 3.3V~+5V(内置升压电路,无需负压);
显示内容:128;
显示颜色:黄绿屏,蓝屏;
显示角度:6: 00 钟直视;
LCD类型:STN;
MCU接口:8 位并口或串行;
其中D0-D07数据端口和STCC52端口P2.0-P2.7相连接,VSSVEE两端接地;P1.5 P1.6 P1.7 LCDRS R/W 信号 ;



P1.0PSB相连选择并行指令模式;P1.3RST相连,3.5LCD128引脚图。

3.5LCD128引脚图

3.5 红外遥控接收模块

平信号兼容器件,体积和一般塑封三极管差不多,
红外接收器是一个能够接收红外信号并能完成从红外线接收到输出TTL

1838B , 任何 ,

就能完成从红外线接收到输出和TTL电平信号兼容全部工作。其关键特征以下:

小型设计,内置专用IC,宽角度及长距离接收,抗干扰能力强,能抵挡环境干扰光线,

所以广泛应用于视听器材、家庭电器和其它红外线遥控产品。

此接收器对外只有3个引脚:DOUTGNDVCC,和单片机接口很方便,

3.7所表示[12-14]:

脉冲信号输出接单片机I/O,本设计接单片机外部中止P3.2;

GND接地线(0V;

VCC接电源正极(+5V;




/电放大

解调

解码

3.6红外接收示意图

3.7VS1838B引脚图

3.6 定时模块

本设计使用DS12C887实时时钟芯片,功效丰富,3.8所表示,在多种设备、家电、仪器、工业控制中,能够很轻易用它来组成时间获取单元,以实现多种时间获取。因为DS12C887能够自动产生世纪、年、月、日、时、
其内部时间信息还能够保持;对于一天内时间统计,12小时制和二十四小时制两种模式。在12小时制模式中,AMPM区分早晨和下午;时间表示方法也有两种,一个用二进制数表示,

BCD

;

DS12C887

128

RAM,

其中有11字节RAM用来存放时间信息,4字节RAM用来存放DS12C887控制信息,

,

113

RAM

使

;

另外用户还可对DS12C887进行编程以实现多个方波输出,并可对其内部三路中止经过软件进行屏蔽[15]

关键技术参数以下:

功效: Clock, Calendar, Alarm;

封装/箱体: eDIP;



时间格式:HH: MM: SS, Binary;
日期格式:DW: DM: M: Y, Binary;
RTC存放容量:113B;
电源电压(最大值):5.5V;
电源电压(最小值):4.5V;
最大工作温度:+70C;
最小工作温度:0C;
安装风格:ThroughHole;
RTC总线接口:Multiplexed;


3.8定时电路

3.7 指示灯模块

指示灯使用发光二极管,简称LED,3.9所表示,是一个能发光半导体电子元件。这种电子元件早在1962年出现,早期只能是低光度红光,以后发展出其它单色光版本,除了红色、绿色、黄色外,还出现了蓝色和白色,时至今日能发出光已遍布可见光、红外线及紫外线,光度也有所提升,高亮度发光二极管更是能够替换传统灯泡。而伴随科技不停进步,发光二极管技术发展很快,其用途也由当初作为指示灯、显示板等,现已被广泛应用于显示器、电视机采光装饰和照明等,成为家用灯饰、交通灯等发光组件,就连汽车尾灯,也开始使用发光二极管车灯了。



LED只能往一个方向导通(通电),叫正向偏置(正向偏压),当电流流过时,

电子和空穴在其内复合而发出单色光,这叫电致发光效应,而光线波长、

颜色跟其所采取半导体材料种类和掺入元素杂质相关,含有效率高、寿命长、

不易破损、开关速度高、高可靠性等传统光源不及优点。它和一般二极管一样,

由一个PN结组成,P为正极,N为负极。当正向连接时,P接正极、N接负极时,

二极管导通;反之,二极管截止。这就是二极管单向导电特征。导通时,

若有足够正向电流经过二极管,发光二极管便会亮。因为其体积小,耗电量低,

常作为单片机应用系统输出指示器件,用以指示系统运行状态。

3.9指示灯电路

3.8 直流电机模块

现在,直流电机凭借其速度可控性,稳定开启、制动,平滑而经济调速等特点,

而在工业生产、城市建筑、农田水利等多方面得到了广泛应用。

直流电机转速控制关键采取3种方法,即改变电枢总电阻、改变电枢供电电压、

改变励磁磁通。不过,经过调压方法进行电机调速,会将一部分电压转化成热能,

使得能源利用率降低,造成能源浪费。而且传统调速方法还含有调整精度低、

调速不稳定、可控性较差、装置繁杂等缺点。

而采取脉宽调制方法对电机进行调速,不仅实现了对电机速度实时调整,

省能 济实



所以在这里我们使用脉宽调制(PWM)来实现调速。脉冲宽度调制(PulseWidth

Modulator),

,

经过调整一个周期内工作周期大小来控制输出功率方法。方波有效电压跟电压幅值和占空比相关,我们能够经过占空比实现改变有效电压。

PWM

,

经过改变直流电机上电枢电压占空比来改变平均电压大小,从而控制直流电机平均速度[16,17]

,

,

方便为直流电动机提供足够大驱动电流。使用不一样直流电动机,其驱动电流也不一样。通常有以下多个驱动电路:三极管电流放大驱动电路、电动机专用驱动模块(如L298)和达林顿驱动电路等。假如是驱动单个电动机,而且电动机电流不大时,可选择三极管组成驱动电路。

假如电动机所需驱动电流较大,可直接选择市场上现成电动机专用驱动模块,接口简单,操作方便,但价格较贵。而达林顿驱动器实际上是一个集成芯片,

使单片机对应I/O口输出不一样占空比PWM波形即可实现。

本设计采取三极管电流放大驱动电路,3.10所表示,D端控制转向,PWM端控制转速。只要控制DPWM电平就能够控制直流电机正转、反转和停转,能够经过脉冲信号占空比控制电动机转速;占空比越大,电机速度越快。直流电机在电子设计中有着关键应用,怎样简单、稳定、高效地对直流电机速度进行正确控制有着关键意义[18]




3.10直流电机驱动电路

3.9 电源模块

本设计接收端由7.2V电池组进行供电,因为单片机I/O口输出5V供电,

输出电压和最大输出电流决定于所选三端稳压器系列。电子产品中,
入一 7805 3.11 ,

92封装。用78/79系列三端稳压IC来组成稳压电源所需外围元件极少,电路内部还有过流、过热及调整管保护电路,使用起来可靠、方便,而且价格廉价。该系列集成稳压IC型号中78/79后面数字代表该三端稳压电路输出电压,7805表示输出电压为5V,7909表示输出电压为负9V。在实际应用中,应在三端集成稳压电路上安装足够大散热器(当然小功率条件下不用)。当稳压温度过高时,稳压性能将变差,甚至损坏。

图中电容Ci用于抵消输入线较长时电感效应,以预防电路产生自激振荡,其容量较小,通常小于1uF;电容C0用于消除输出电压中高频噪声,可取小于1uF电容,也可取几微法甚至几十微法电容,方便输出较大脉冲电流[19]



3.11 7805稳压电路





4章系统软件设计

基于单片机电风扇遥控开关设计包含两个子系统:红外遥控器发射指令和红外遥控接收指令,两个子系统含有很强互连性,但各个子系统软件设计还是有一定差异,本设计软件分为发射部分和接收部分。 使用C语言编写程序,调用库函数多,易于移植,编程简单。

4.1 红外发射及接收工作原理

4.1.1 红外发射工作原理

系统上电初始化,当无按键按下时,系统处于等候状态;当有按键按下时,

经三极管9013放大后驱动红外发射管发射经调制脉冲信号。
系统检验按键号,得其按键码值。在发射过程中,将按键码值和38KHZ载波进行调制,

所谓脉冲编码,就是将每一位数据信号用一个脉冲来表示。

4.2

数据“0是由0.56ms高电平和0.565ms低电平组成,高低电平比约为1:1,脉宽为1.125ms;数据“1是由0.56ms高电平和1.69ms低电平组成,高低电平比约为1:3,脉宽为2.25ms。正是由上述“0和“1组成32位二进制码,38KHZ载波进行调制,然后再经过红外发光二极管产生红外线向空间发射。

这么做有两点好处:第一,降低了有效发射时间,有利于降低平均功耗,这对于采取干电池供电发射器十分关键;第二,外部干扰信号多为缓变信号,

这么做也有利于抗干扰[20,21]




引导码

S

S

S

S

S

S

S

S

S

S

S

S

S

S

S

S

D

D

D

D

D

D

D

D

-

-

-

-

-

-

-

-

D

D

D

D

D

D

D

D

0

1

2

3

4

5

6

7

0

1

2

3

4

5

6

7

0

1

2

3

4

5

6

7

0

1

2

3

4

5

6

7

用户码

用户码

数据码

数据码反码

4.1编码方法组成

数据0参数图

数据1参数图

2.25ms

0.56ms

0.56ms

1.125ms

4.2数据参数示意图

4.1.2 红外接收工作原理

系统上电初始化,对单片机P3.2口进行检测,当其为高电平时,

系统处于等候状态。当其为低电平时,将开启中止服务程序,实现接收数据。

需要说明是:数据采取中止方法进行接收,单片机在外部中止0方法下工作,

即完成红外线接收、放大、解调,这些工作由一体化红外接收头完成,

输出TTL兼容电平。最终经过解码把脉冲信号转换成数据,从而实现传输。

当红外线接收器输出脉冲数据时,第一位码低电平将开启中止程序,实时接收数据。

在数据接收时,先对第一位(起始位),即对引导码码宽进行验证[23,24]

4.2 红外发射及接收程序步骤图

4.2.1 红外发射程序步骤图

主程序首先是初始化键盘和红外发射端口,然后判定按键是否按下,

假如有按键按下就让其对应按键编码经过红外发射管发射出去;

程序 等候 键按 ,



假如检测到信号就让其按循序发射引导码、用户码、用户码、数据码和数据码反码,4.3所表示。

开始

初始化按键、红外发射端口

N 判断是否有按

键按下?

Y
发送引导码

发送用户码

发送用户码


4.2.2 红外接收程序步骤图

主程序首先是初始化红外接收端口,然后检测是否接收到红外信号,假如接收到红外信号就进入中止,延时0.14ms,假如计数N小于等于8、脉宽等于1.125ms就接收“0;假如计数N大于8,脉宽等于2.25ms就接收“1;假如计数N大于30,脉宽大于4.2ms则计数过长自动离开[25],4.4所表示。




开始

初始化红外接收

端口

接收到红外信

号? N

Y

进入中断

延时定时0.14ms

计数N小于等于8 N 计数N大于8,脉N 计数N大于30


脉宽等于1.125ms? 脉宽大于4.2ms?

返回

4.4遥控接收程序步骤图




5章系统调试

5.1 系统调试结果

本设计硬件电路包含发射和接收部分,硬件电路图图5.1所表示。

发射部分由单片机最小系统、按键电路、LCD128、发射电路组成;

接收部分由单片机最小系统、接收电路、定时电路、指示灯、

直流电机和驱动电路组成。


5.1硬件电路图

当电源打开,液晶显示“开启” 。按键按下,LCD显示遥控开关状态,

,

1

2

3

4

,

指示灯分别“第1盏灯亮或第2盏灯亮或第3盏灯亮或第4盏灯亮或全灭”; 按下定时按键+1键或-1,液晶显示“定时XXX分钟”,然后按确定键,



液晶显示“确定XXX分钟”,5.25.35.45.5所表示,此时直流电机按对应操作转动,最终实现遥控开关对直流电机控制。

打开电源,液晶显示“开启”,5.2所表示:

5.2开启显示
按下按键选择所需档数,液晶显示“1档或2档或3档或4档”,指示灯分别“第1盏灯亮或第2盏灯亮或第3盏灯亮或第4盏灯亮”,5.3所表示:




5.3档数显示
按下停止键,液晶显示停止,指示灯全灭,5.4所表示:


5.4停止显示
按一下+1,液晶显示“定时001分钟”,然后按下确定键,液晶显示“确定001

分钟”, 5.5所表示:





5.5定时显示

5.2 调试过程总体分析

一个单片机应用系统经过总体设计,包含硬件设计、软件设计、元器件安装后,在系统程序存放器中放入编制好应用程序,系统即可运行。但一次性成功几乎是不可能,多少会出现部分硬件、软件上错误,这就需要经过调试来发觉错误并加以更正。

调试步骤以下:
1.调试前不加电源检验
对照电路图和实际线路检验连线是否正确,包含接错、少接、多接等;用万用表检验焊接和连接处是否良好:元器件引脚之间有没有短路,



连接处有没有接触不良,二极管、三极管、集成电路和电解电容极性是否正确;电源供电,包含极性、信号源连线是否正确;电源对地是否存在短路。

2.静态检测和调试
断开信号源,把经过正确测量电源接入电路,用万用表电压检测电源电压,观察有没有异常现象:异常气味、手摸元器件发烫、电源短路等,假如发觉,应立即切断电源,排除故障。

3.动态监测和调试
动态调试时在静态调试基础上进行,调试方法在电路输入端加上所需信号源,并循着信号注射逐层监测各相关点波形、参数和性能指标是否满足设计要求,如必需,要对电路参数做深入调整。发觉问题,要设法找出原因,排除故障,继续进行。

此次设计碰到问题及处理方法以下:

一开始不知道是什么原因造成。以后发觉了在对直流电机调速时D端为低电平、 软件调试过程中,一打开电源,按键没按下,直流电机就立即转动,
硬件调试过程中,LCD128一开始出现乱码,程序正确,硬件连接也没有问题,而且汉字有时正确,有时出现乱码,但放在她人单片机能够正确显示,以后发觉原来是单片机芯片问题,貌似芯片被烧掉了。而这简单原因,我在之前调试中一直没有注意,所以浪费了很多时间。

硬件另一个问题就是我对单片机及各模块引脚把握不是很好,VCCGND一开始不小心可能就会接反掉了,造成无法正常显示。




6章总结和展望

此次设计综合了大学四年所学到专业知识,把理论联络到实际中去。

为了提升自己综合能力,从搜集资料、各模块电路设计、绘制原理图、程序编制到最终资料整理全部是自己亲自完成。刚开始,我不知道从哪里入手,自己跑图书馆、上网查资料、向同学请教,以后慢慢地进入状态,最终确定了基础设计方案,再对所用芯片进行查找、调试等。

在整个设计过程中碰到问题关键有以下三点:一、基础知识掌握不牢靠,关键表现在部分常见电路形式和功效不清楚,对书本上内容遗忘现象严重;二、对部分常见应用软件缺乏应用,表现在画电路图、框图和步骤图时候,对这些软件操作不熟练;三、相关知识掌握不够全方面,缺乏系统设计经验。

本设计即使已经达成了设计目标及要求,不过其过程是曲折,在设计过程中碰到了很多问题,有些是自己粗心造成,有些是客观原因,记得好几次全部是芯片坏了,花了不少时间,但正是这么锻炼了我耐性。
此次毕业设计是一次理论和实际相结合考验,它使我愈加真切地体会到,作为一名电子信息专业学生,光纸上谈兵是远远不够,实际动手能力和扎实理论知识相同关键。此次设计,对我来说,既是一次对理论知识巩固和提升,让我能够完全利用大学所学知识,愈加完整将所学表现其中,同时也是对实际动手操作能力地锻炼和加强。另外,我对电路设计和软件控制等方面有了愈加深刻认识,并在实际电路连接中,掌握了很多技能,端正了我学习态度,对自己愈加严格要求,不一知半解,努力争取明明白白。




参考文件

[1]钱波潮,陈惠英.基于单片机多功效红外遥控器设计[J].数字技术和应用,, 4,129

[2]YU-ChiWu, Bo-SenChangDevelopmentof a web-based infrared remote control system for energymanagement[N]Departmentof Electrical Engineering National United University

[3]Kong S, Heo J, Abidi B, Paik J, Abidi M.Recent advances in visualand infrared face recognition—a review[J]ComputerVision and Image Understanding: , 97,1,103-135

[4]白杉.红外遥控:小电器带来大方便[J].广东科技,, 7,24-24

[5] , , 宪春, 张重盛.多功效电风扇造型设计和研究[J].长春大学学报(自然科学版),, 18,5,36-37

44[7]杨丕达.中国电风扇产品现实状况分析[J].日用电器,, 12,92-96

[8]楼然苗,李光飞.51系列单片机设计实例[M].北京:北京航空航天大学出版社,, 8-16

[9]ShoheiMikami, Ryo Wada, and Tomohiro HaseRemoteControl with Switches on Fingertips[D]Japan:Ryukoku University,

[10]朱高中.基于单片机红外遥控解码电路设计[J].计算机技术和自动化,, 30,2,68-71

[11]李金群.基于51单片机128液晶图文显示研究[J].机电信息,, 36,139-140

[12]李经达.红外遥控器软件解码及应用[J].单片机和嵌入式系统应用,, 7,414-416



[13]
李玉江.红外遥控接收放大器抗干扰能力及应用研究[A].姚飞闪.第八届全国LED产业研讨和学术会议论文集[C].厦门:154-157

[14]朱志伟,刘湘云.基于ATS51红外遥控解码实现[J].信息科技,, 34,109-112

[15]

,

李玮.基于单片机和128LCD模块万年历设计和仿真[J].中小企业管理和科技,, 34,227-228

[16]李经达.红外遥控器软件解码及应用[J].单片机和嵌入式系统应用,, 7,414-416

[17] , ,李晋.基于单片机用软件实现直流电机PWM调速系统[J].机电一体化,, 10, 5,49-51[18]李春雨,李卫平.基于51单片机直流电机驱动[J].科海小说博览:科技探索,, 10,52-53

552-553

[20]

,

刘昌屏.基于ATC52学习型红外遥控器设计[J].湖北第二师范学院学报,, 28,2,93-96

[21]蔡明文.红外遥控编码唯一性研究[J].兰州工业高等专科学校学报,, 15,4,1-3

[22]王建跃,高守乐,张岩军.红外遥控器编码方法[J].中国矿业大学信电学院学刊,239-241

[23]凌志斌,邓超平,郑益慧,叶芃生.红外遥控技术及其解码方案[J].微处理机,, 6,59-62

[24]戴培山,冯成德,刘栋.基于keilc51红外遥控器解码设计[J].自动化和仪器仪表,



,6,11-23

[25]

51

——

单片机外部中止及红外遥控解码[J].电子制作,, 6,76-79





附录

(一)部分程序代码
1)发射程序
sbitpmm=P3^7;//设置P3.7为输出
ucharsystem=0xd1;//设置系统码为0xd1
ucharcode shulie[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; uintshiyan=0;
voidPPM_cd(uchar dat)
{
uchars=0,user=0,shuju=0,hc=0;
ucharcount0=0;

/******************引导码*******************/ TR0=1;
count=0;
count0=0;
do
{
if(count>=10)
{
count=0;
count0++;//计数
}

}while(count0<shiyan); //输出引导码9ms高电平

shiyan=30;



pmm=0;
count=0;
count0=0;
do{
if(count>=10)
{
count=0;
count0++;//计数
}
}while(count0<shiyan);//输出引导码4.5ms低电平
/************系统码****************/
user=system;
for(s=0;s<8;s++) {
count=0;
count0=0;
do{
if(count>=10)
{
count=0;
count0++;//计数
}

}while(count0<shiyan);//输出0.56ms高电平hc=user&shulie[s];//获取该位

if(hc==0)//若为0



shiyan=3;//该位为0延时0.565ms
else//若为1
shiyan=10;//该位为1延时1.69ms
pmm=0;
count0=0;
count=0;
do{
if(count>=10)
{
count=0;
count0++;
}

} }while(count0<shiyan);//输出计数时间低电平
for(s=0;s<8;s++)
{
shiyan=3;
pmm=1;
count0=0;
count=0; //计数
do{
if(count>=10)

{

count=0;

count0++;




}
}while(count0<shiyan);//输出0.56ms高电平
hc=user&shulie[s];//获取该位
if(hc==0)//若为0
shiyan=10;//该位为1延时1.69ms
else//若为1
shiyan=3;//该位为0延时0.565ms
pmm=0;
count0=0;
count=0;
do{
if(count>=10)
{ count=0;
}while(count0<shiyan);//输出计数时间低电平
}
/*************数据码*****************/
shuju=dat;
for(s=0;s<8;s++)
{
shiyan=3;
pmm=1;

count=0;
count0=0;
do{





if(count>=10)
{
count=0;
count0++;//计数
}
}while(count0<shiyan);//输出0.56ms高电平
hc=shuju&shulie[s];//获取该位
if(hc==0)//若为0
shiyan=3;//该位为0延时0.565ms
else//若为1
shiyan=10;//该位为1延时1.69ms
count=0;
count0=0; pmm=0;
{
count=0;
count0++;//计数
}
}while(count0<shiyan);//输出计数时间低电平
}
/**************数据反码*******************/
shuju=dat;

for(s=0;s<8;s++)
{

shiyan=3;



count=0;
count0=0;
pmm=1;
do{
if(count>=10)
{
count=0;
count0++;//计数
}
}while(count0<shiyan);//输出0.56ms高电平
hc=shuju&shulie[s];//获取该位
if(hc==0)//若为0

else shiyan=10;//该位为1延时1.69ms
count0=0;
pmm=0;
do{
if(count>=10)
{
count=0;
count0++;//计数
}

}while(count0<shiyan); //输出计数时间低电平}
TR0=0;//关定时器中止




pmm=0;//关数据输出口
R_TIME=0;//关方波输出口
2)接收程序
voidIR_IN() interrupt 0 using 0
{
unsignedchar j,k,N=0;
EX0= 0;//开外部中止0
delay3(15);
if(IRIN==1) //确定IR信号出现
{
EX0=1;
return;
} while(!IRIN) //IR变为高电平,跳过9ms前导低电平信号。
delay3(1);
for(j=0;j<4;j++) //搜集四组数据
{
for(k=0;k<8;k++) //每组数据有8
{
while(!IRIN) //IR变为高电平
delay3(1);
while(IRIN) //计算IR高电平时长

{

delay3(1);

N++; //计数




if(N>=30)/
{
EX0=1;//开外部中止0
return;
} //0.14ms计数过长自动离开。

} //高电平计数完成
IRCOM[j]=IRCOM[j]>> 1; //数据最高位补“0 if(N>=8)
{
IRCOM[j]= IRCOM[j] | 0x80;
//数据最高位补“1
}

} N=0;
{

EX0=1;//开外部中止
return;
}
sta=IRCOM[2];
switch(sta)
{

case 0x0C:/

alarm_hour=read_ds_data(4);//获取目前小时



alarm_second=read_ds_data(0);//获取目前秒



alarm_minute=read_ds_data(2);//获取目前分
alarm_hour=alarm_hour+((alarm_minute+time)/60);获取闹钟小时
alarm_minute=(alarm_minute+time)%60;//获取闹钟分钟
set_alarm(alarm_hour,alarm_minute,alarm_second);设置闹钟
P2=time;
break;
case 0x10:
push_val_left =4; //PWM 调整参数1-10 1为最慢,10是最快改这个值能够改变其速度
P2=0Xfe;
Left_moto_go; //电机前进
break;
case 0x15: push_val_left =5; //PWM 调整参数1-10 1为最慢,10是最快
Left_moto_go; //电机前进
break;
case 0x20:
push_val_left =7; //PWM 调整参数1-10 1为最慢,10是最快改这个值能够改变其速度
P2=0Xfb;
Left_moto_go; //电机前进
break;
case 0x25:
push_val_left =15; //PWM 调整参数1-10 1为最慢,10是最快

改这个值能够改变其速度



Left_moto_go; //电机前进
P2=0Xf7;
break;
case0x30:
push_val_left =0; /PWM 0
Left_moto_go; //电机停止
P2=0XFF;
break;
case0x45:
time++;//分钟加一
if(time>999)//最大值为999
{

} time=0;
time--;//分钟减一
if(time<0)
{
time=999;//分钟不能为负
}
break;
default:
break;

}
EX0=1;//开外部中止0

}




(二)设计总原理图






致谢

在此,首先我要向我尊敬导师丁晓老师表示感谢,这段时间以来,在她悉心指导和关心下,我顺利地完成了此次设计。从开始选题、部署任务进度到指导和帮助完成设计和论文最终完稿过程中,丁老师全部给我细心指导和不懈支持。在老师指导和帮助下,我克服了对复杂电路设计畏惧情绪,以前总是认为好难、好复杂,没有真正地去实践过,但这次竟然顺利地完成了此次设计;其中,

,

让我明白科学思维方法和学习方法是多么关键,只有这么才能够有很高效率,才能够让自己工作更完美。

其次,我要感谢信息科学和工程学院老师们对我教育,这些老师生动讲课,拓宽了我各方面知识贮备,为我以后发展打下了坚实基础。在这里我还要尤其感谢在这四年学习生涯中所认识各位生活和学习上同学和好友,
我要向她们表示我深深谢意和美好祝福!

谢谢!


显示全文