基于STC89C52单片机的家用红外遥控系统 毕业论文.doc
《基于STC89C52单片机的家用红外遥控系统 毕业论文.doc》由会员分享,可在线阅读,更多相关《基于STC89C52单片机的家用红外遥控系统 毕业论文.doc(71页珍藏版)》请在三一文库上搜索。
1、泰 山 学 院 本科毕业论文 基于 STC89C52 单片机的家用红外遥控系统 所 在 学 院信息科学技术学院 专 业 名 称自动化 申请学士学位所属学科工 学 年 级2009 级 学 生 姓 名、学 号 指导教师姓名 、职称 完 成 日 期2013 年 5 月 1 日 摘 要 I 摘 要 随着科技的发展,特别是微电子技术的发展,单片机的应用已经深入到生活 的各个领域。本文以 STCC89C52 为控制芯片,DS1302 为时钟芯片,DS18B20 为 温度传感器,HS0038 红外一体接收头作为红外接收器,以此接收并处理遥控器 按键信号并用来矫正时钟时间。同时,本设计还加入了定时和设定温度上
2、下限的 功能,当达到预设时间时执行开关灯命令,当温度低于温度下限或高于温度上限 时执行开空调命令,开关器件为两个大功率电磁继电器。本设计中所有外设数据 显示于 LCD12864 液晶,形成一个良好的用户界面。硬件电路图和 PCB 用 Protel99SE 绘制,软件开发环境为 KeilV3,设计实物为万用板焊接电路,经调试 各项功能均已正常实现。 关键词:关键词:红外遥控,单片机,DS1302,DS18B20,LCD12864 Abstract II ABSTRACT With the development of science and technology, especially the
3、development of microelectronics technology, SCM applications have been deeply into all areas of life. Taking STCC89C52 as control chip, for DS1302 clock chip, DS18B20 as temperature collector, HS0038 infrared receiving head as integrated infrared receiver, signal receiving and processing the remote
4、control buttons, in order to correct the clock time. At the same time, the project also joined the function of timing, and setting temperature of upper and lower, executive orders open to turn off the lights when preset time is reached, when the temperature lower than the temperature is lower or hig
5、her than the temperature limit command execution open air conditioning, for electromagnetic relay switch device. The whole project all the data shown in LCD12864 LCD, forming a good user interface. Made in Protel99SE, the hardware circuit diagram and PCB software development environment for KeilV3,
6、project physical for universal plate welding circuit, through debugging functions are normal. Key words:infrared remote control, microcontroller, DS1302, DS18B20, LCD12864 目 录 III 目 录 1 绪绪 论论.1 1.1 家用电器的发展及智能家电的前景.1 1.2 电子技术的发展对智能家电的推动.1 1.3 家用红外遥控系统设计思路.2 2 硬件设计硬件设计.2 2.1 STC89C52 单片机介绍 2 2.2 DS18B
7、20 温度传感器介绍.5 2.3 DS1302 时钟芯片介绍 .8 2.4 HS0038 红外一体接收器介绍 .10 2.5 LCD12864 液晶介绍 11 2.6 其他硬件电路.13 3 软件开发平台及软件软件开发平台及软件.15 3.1 开发环境介绍及程序总体结构.15 3.2 DS18B20 温度程序模块.15 3.3 DS1302 时间程序模块 .17 3.4 LCD12864 液晶驱动程序 20 3.5 HS0038 红外解码程序模块 .21 3.6 定时定温功能的程序实现.24 4 系统调试及设计总结系统调试及设计总结.24 4.1 系统调试.24 4.2 总结.26 参考文献参
8、考文献.27 致致 谢谢.28 附附 录录.29 1 1 绪 论 1.1 家用电器的发展及智能家电的前景 电器在国民日常生活和国防领域中占有举足轻重的位置,有着不可或缺的作 用,其中,家用电器与人们的生活的关系最为密切。家用电器问世已有百年历史, 美国人爱迪生发明了白炽灯,从此开创了家庭用电时代。19 世纪末电磁波被证实 存在,奠定了电子学诞生的基础。之后,二极电子管和三级电子管的发明使人们 开始了真正的电子应用。50 年代电子工业迅速发展,晶体管尤其是集成电路的发 明,使人们进入微电子时代同时家用电器的应用也提高到新的水平。 随着科技的发展家用电器也越来越智能化,家用电器的发展趋势主要有高性
9、 能高可靠性,电路集成化功能多样化,随着现代电子技术的发展家用电器与多学 科交叉融合向着网络化与智能化发展。总体看来现代家用电器具有更强大的功能, 而实现强大功能的保障是具有良好的微处理器,一个智能家电可以实现多个传统 家电的功能。多功能是智能家电主要特点,同时,通信功能也是智能家电的发展 方向。另外,新型家用电器在环保,审美以及安全性上也对人们提出了新要求。 1.2 电子技术的发展对智能家电的推动 20 世纪以来,电子技术发展迅速,特别是近几年来,现代电子产品以及各种 消费电子产品已经渗透到了生活各方面,电子技术的发展有力的推动了科技进步 并且提高了人们的生活水平。以单片机为核心的多功能系统
10、正在飞快的改变着人 们的生活,特别是一些家用智能产品,不但方便了人们的生活,更加丰富了人们 的生活方式。以本文中的家用红外遥控系统为例,该设计除了具有一般的日历功 能外,还增加了温度检测功能,但其能成为“智能”之处并不在于此,而是他可 以通过遥控按键设定时间值和温度值,程序会按照这些数值自动的控制继电器, 从而达到了定时开关灯,定温开关空调的目的。 在享受越来越智能化的电子产品的时候,我们还要再次感谢电子技术的发展, 集成化的功能模块已使编程和硬件设计变得非常方便。以温度采集模块为例,经 典的温度采集系统由温度敏感器件采集到模拟量、经过 A/D 转换和单片机电路组 成。由于温度传感器输出模拟量
11、那么信号需要经过 A/D 转换,转换为数字量后才 2 能与单片机等数字接口进行通信,从而使电路变得比较复杂,提高了成本。而 DS18B20 集成了模数转换功能,通过封装只留出一个数据接口,这样就可以直接 输出数字量,从而与单片机连接变得非常简单,提高了灵活度,降低了成本增加 了应用价值。另外 HS0038 红外一体接受头,更是能把红外信号直接转变为电压 信号,省去了大量的外围电路,方便了程序编写。 1.3 家用红外遥控系统设计思路 本设计主要应用于家庭,操作方便功能丰富,能很好的为人们的生活提供方 便。 家用红外遥控系统要实现的功能主要有,显示时间值,显示温度值,定时开 关功能,设定温度上下限
12、功能,另外,由于采用红外遥控器作为按键,还应具有 红外接收功能。根据以上功能要求,来选择所需要的硬件,本设计中所用到的硬 件主要有 STC89C52 单片,DS1302 时间芯片,DS18B20 温度传感器,HS0038 红 外接收器,LCD 液晶屏,继电器。在软件设计上,各个模块单独编程,这样能够 方便调试发现错误,也方便今后程序移植和升级。 2 硬件设计 2.1 STC89C52 单片机介绍 2.1.1 STC89C52 引脚简介 STC89C52 管脚及实物图如图 2-1,图 2-2 所示。 电源引脚(2 根) GND(20 脚):接地线;VCC(40 脚):接5V 电源 外接晶振引脚(
13、2 根) XTAL0(18 脚):振荡电路的输入端;XTAL1(19 脚):振荡电路的输出端 控制引脚(4 根) ALE/PROG(30 脚):地址锁存允许信号;EA/VPP(31 脚):片内外程序存储器 选择,低电平读取外部存储器指令,高电平读片内程序指令;RST/VPP(9 脚):复 位引脚 2 个机器周期以上的高电平单片机复位;PSEN(29 脚):外部存储器读选通 信号。 3 图 2-1 STC89C52 管脚图 图 2-2 STC89C52 实物图 I/O 口(32 根) 该单片机有 4 组(P0、P1、P2、P3)I/O 口,每组 8 位,共 32 根引脚。P0 口(39 脚32
14、脚)是一个具有 8 位漏极开路的双向 I/O 口。当做输出口使用时,每 组能驱动 8 路 TTL 电平。 P1 口(1 脚8 脚)是一个 8 位双向 I/O 口且具有上拉电阻。可以用来驱动 4 TLL 逻辑电平。 P2 口(21 脚28 脚)是一个 8 位双向 I/O 口且具有内部上拉电阻,P2 口可以 用来驱动 TTL 逻辑电平。 P3 口(10 脚17 脚)是 8 位准双向 I/O 口,同时 P3 口具有复用功能,P3.0 串 行输入(RXD)、P3.1 串行输出(TXD) 、P3.2 外部中断 0(INT0)、P3.3 外中断 1(INT1)、P3.4 定时/计数器 0、P3.5 定时/
15、计数器 1、P3.6 外部数据存储器写选通、 P3.7 外部数据存储器读选通。 2.1.2 STC89C52RC 主要功能特点 STC89C52 是宏晶科技生产的一种高性价比低功耗的 8 位单片机,片内集成 8KFlash 程序存储器,STC89C52 使用经典的 MCS-51 内核,程序上完全兼容。但 该单片机还是做了不少改进,缩短了指令执行周期,增加了定时器 2,增加了看 门狗功能。在单芯片上,8 位的 CPU 配合 8K 的程序存储器,使得 STC89C52 能 满足基本的控制需要而不需要再外扩存储器。 以下是 STC89C52 的基本特点: (1) 相对于一个机器周期占 12 个时钟周
16、期的 8051 增加 6 时钟/机器周期功能。 (2) 工作电压宽度在 5.5V - 3.4V。 (3) 工作频率 0 40 MHz 最高可达到 48MHz。 (4) 片内集成 8K 字节的程序存储器和 512B 的 RAM。 (5) 通用 I/O 口(32 个) ,复位后 P1P4 是准双向口并带有弱上拉电阻,P0 口是开漏输出,作为地址线使用时不用接上拉电阻而作为普通 I/O 口使用时必须 使用上拉电阻。 (6) 具有 3 个 16 位定时器/计数器,定时器 0 可以拆分成两个 8 位使用。 (7) 具有四个外部中断,可以设置成下降沿或低电平模式触发,掉电模式下外 部中断的低电平模式可以唤
17、醒系统。 (8) 具有一个通用同步串口,如有需要可以通过普通 I/O 口模拟串口进行扩 展。 (9) 正常工作温度范围 0 - 75,封装为 PLCC-44 和 PDIP-40 两种,本设计 5 为 PDIP-40 封装。 2.2 DS18B20 温度传感器介绍 2.2.1 DS18B20 引脚及特点 DS18B20 的引脚及封装如图 2-3 所示。 图 2-3 DS18B20 引脚及封装 DS18B20 的引脚:1.DQ 输入/输出端口;2. GND 为电源地;3. VDD +5V(寄生电源模式下该位接地即可) DS18B20 的主要特性有一下方面,DS18B20 适应的温电压范围为 3.0
18、5.5v, 可以直接与 3v 或 5v 单片机相连,如果使用寄生电源模式两个电源引脚可以直接 接地,DS18B20 与单片机连接只需要一根数据线,通过一定的时序操作可以实现 读和写的双向通信,另外 DS18B20 还有一大特色,一条数据线可以连接多个传 感器 ,在不增加 I/O 口的情况下实现多点测温的需求,DS18B20 设计精巧实用 方便,整个功能电路集成在只有三个引脚的芯片内,形如三极管 ,其温度测量 范围55125,温度测量分辨率为 912 位出厂设置为 12 位精度,这 6 样在默认设置下只要把测得并转化后的温度值乘以 0.0625 即可得实际温度值。 DS18B20 与单片机的连接
19、有两种方法,外部电源供电和寄生电源供电方式, 在实际使用时只需要在数据线上接上 4.7k 的上拉电阻即可。本设计采用外部 电源供电方式如图 2-4 所示。 图 2-4 DS18B20 外部供电电路图 2.2.2 DS18B20 内部结构及寄存器介绍 DS18B20 的内部结构如图 2-5 所示。 图 2-5 DS18B20 内部结构图 DS18B20 的四大数据组成部分: 光刻 ROM 中的 64 位序列号,用于实现一根总线上挂接多个 DS18B20 的 目的。 温度灵敏原件,用于接收最初的温度模拟量,即电阻随温度变化。 非易失性温度报警触发器(EEPROM)TH 和 TL。可通过软件写入用户
20、报警上 7 下限值。 配置寄存器,通过 R0,R1 位设置,温度分辨率,出厂时 R0=1,R1=1(即 12 位分辨率)具体设置方法如图 2-6 所示。 图 2-6 分辨率设置寄存器 下面是对 DS18B20 高速暂存存储器介绍: 高速 RAM 由 9 个字节组成如表 2-1 所示。 表 2-1 DS18B20 存储器映像 温度低位温度高位THTL配置位保留保留保留 CRC 校 验 温度转换命令(44H)发出后在最长 750ms 的时间内,二进制温度值被存放 于温度高位和温度低位(即高速 RAM 的第 0 和 1 字节) 。这时单片机按照低位在 前,高位在后的方式读取两字节数据,就可以通过一定
21、的转换规则得到十进制温 度。在转换时应注意,当 S=0(正温度)时,根据分辨率位数直接转换为十进制; 当 S=1(负温度)时,应先将补码取反加一,再进行十进制转换。数据格式如图 2-7 所示。 图 2-7 温度值格式图 DS18B20 与单片机的通信遵循着一定的时序,其时序如图 2-8 所示。 8 图 2-8 DS1302 时序图 由图可知,使用 DS18B20 时首先对其复位,复位信号至少为 480us 的低电平, 若 DS18B20 接收到复位信号则会在 1560us 内发出一个回复脉冲,脉冲时间为 60240us,此时控制器数据线应是高电平以便对其接收,至此,通信协议已经基 本达成,接下
22、来开始数据通信。 2.3 DS1302 时钟芯片介绍 2.3.1 DS1302 引脚及内部寄存器简介 DS1302 是美国达拉斯公司推出的一款功耗低功能全的实时时钟芯片,RTC 寄存器可提供年、月、日、时、分、秒、及周的时间值,另有 31 字节静态 RAM,采用串行三线接口与单片机进行通信,突发方式下,可以一次性传送多个 字节的数据或时钟信号。工作电压宽度 2.55V ,用来保持片内数据时功率控制在 1 毫瓦内。具有备用电源引脚,也可以通过寄存器设置备用电源充电方式。 DS1302 的引脚如图 2-9 所示。 图 2-9 DS1302 引脚图 9 其中 X1、X2 外接 32.768KHz 晶
23、振;GND 接地;CE 为信号使能端,数据传 输时必须保持高电平,I/O 为数据输入/输出引脚;SCLK 为串行时钟,Vcc1,Vcc2 为电源供电管脚。 DS1302 关于时间和日期的寄存器如图 2-10 所示,共有 12 个,编程时注意读 和写的地址有所不同。 图 2-10 DS1302RTC 寄存器 DS1302 控制字,如表 2-2 所示。 表 2-2 DS1302 控制字 1RAMA4A3A2A1A0RD/WR 控制字最高字节应该为 1,为 0 时不能向芯片写入数据,控制字从低位开始 输出,第 6 位为 0 表示读取时钟数据,为 1 表示读 RAM 数据,A4A0 为操 作地址。在下
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于STC89C52单片机的家用红外遥控系统 毕业论文 基于 STC89C52 单片机 家用 红外 遥控 系统
链接地址:https://www.31doc.com/p-3921721.html