1、 1 基于基于 5151 单片机课单片机课 程设计程设计报告报告 项目题目项目题目:基于 51 单片机的红外线设计 专专 业业: 通信工程 姓姓 名:名: 学学 号号: 指导教师指导教师: 2012/12/11 2 一一、摘要摘要 本设计以 STC89C51 单片机为核心的温度控制系统的工作原理 和设计方法。温度信号由温度芯片 DS18B20 采集, 并以数字信号的方 式传送给单片机。文中介绍了该控制系统的硬件部分,包括:温度检 测电路、温度控制电路。单片机通过对信号进行相应处理,从而实现 温度控制的目的。文中还着重介绍了软件设计部分,在这里采用模块 化结构,主要模块有:数码管显示程序、键盘扫
2、描及按键处理程序、 温度信号处理程序、led 控制程序、超温报警程序。 关键词:STC89C51 单片机 DS18B20 温度芯片 温度控制 ,LED 报警提 示. 二、二、系统方案的设计系统方案的设计 1 1、设计要求设计要求 基本功能: 不加热时实时显示时间,并可手动设置时间; 设定加热水温功能。人工设定热水器烧水的温度,范围在 2070 度 之间,打开开关后,根据设定温度与水温确定是否加热,及何时停止 加热,可实时显示温度; 设定加热时间功能。限定烧水时间, 加热时间内超过温度上限或低于 温度下限报警,并可实时显示温度。 2、系统设计的框架系统设计的框架 本课题设计的是一种以 STC89
3、C51 单片机为主控制单元,以 DS18B20 为温度 传感器的温度控制系统。 该控制系统可以实时存储相关的温度数据并记录当前的 时间。其主要包括:电源模块、温度测量及调理电路、键盘、数码管显示、指示 3 灯、报警、继电器及单片机最小系统。 图 1 系统设计框架 3 3 工作原理工作原理 温度传感器 DS18B20 从设备环境的不同位置采集温度,单片机STC8951 获 取采集的温度值,经处理后得到当前环境中一个比较稳定的温度值,再根据 当前设定的温度上下限值,通过加热和降温对当前温度进行调整。当采集的温度 经处理后超过设定温度的上限时,单片机通过三极管驱动继电器开启降温设备 (压缩制冷器)
4、, 当采集的温度经处理后低于设定温度的下时 , 单片机通过三极 管驱动继电器开启升温设备 (加热器) ,这里采用通过 LED1 和 LED2 取代! ! ! 当由于环境温度变化太剧烈或由于加热或降温设备出现故障, 或者温度传感头出现故障 导致在一段时间内不能将环境温度调整到规定的温度限内的时候, 单片机通过三极管驱动扬 声器发出警笛声,这里采用 HLLED 提示。 三、硬件资源三、硬件资源 1、器件选择、器件选择: 1.51 单片机一块单片机一块STC89c51 4 STC8951 是一个低功耗,高性能 CMOS 8 位单片机,片内含 8k Bytes ISP(In-system progra
5、mmable)的可反复擦写 1000 次的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、 非易失性存储技术 制造,兼容标准 MCS-51 指令系统及 STC8951 引脚结构,芯片内集成 了通用 8 位中央处理器和 ISP Flash 存储单元,功能强大的微型计算 机的 STC8951 可为许多嵌入式控制应用系统提供高性价比的解决方 案。STC8951 具有如下特点:40 个引脚,8k Bytes Flash 片内程序 存储器,128 bytes 的随机存取数据存储器(RAM) ,32 个外部双向输 入/输出(I/O)口,5 个中断优先级 2 层中断嵌套中断,2 个 16
6、位可 编程定时计数器,2 个全双工串行通信,片内时钟振荡器。 此外,STC8951 设计和配置了振荡频率可为 0Hz 并可通过软件设 置省电模式。空闲模式下,CPU 暂停工作,而 RAM 定时计数器,串行 口, 外中断系统可继续工作, 掉电模式冻结振荡器而保存 RAM 的数据, 停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有 PDIP、TQFP 和 PLCC 等三种封装形式,以适应不同产品的需求。 由于系统控制方案简单 ,数据量也不大 ,考虑到电路的简单和成 本等因素 ,因此在本设计中选用 STC8951 单片机作为主控芯片。主 控模块采用单片机最小系统是由于 STC8951 芯片内含有 8 kB 的 E2PROM ,无需外扩存储器 ,电路简单可靠 ,其时钟频率为 024 MHz ,并且价格低廉 ,批量价在 10 元以内。 其单片机的外围引脚有 40 个,分别是: 第 20 脚和 40 脚分别是电 源,即 GND 和 Vcc;第 9 脚是复位脚