温度检测设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电气工程学院
单片机课程设计报告
班级:
姓名:
学号:
设计题目:温度检测系统设计
设计时间:
评定成绩:
评定教师:
摘要
以51单片机为核心,设计一个温度检测系统。该系统基于8051核心的单片机
AT89S51,通过串行AD转换芯片PCF8591将基于NTC热敏电阻的测温电路输出的模拟信号转换成数字信号,并根据电路特性曲线计算出目标温度值,还具有通过lcd1602液晶显示目标温度和超过设定阈值报警功能。该系统面向普通的要求不高的测温场景,并尽可能提高测量精度、减小测量误差。
Proteus仿真、keil与proteus联调是此次设计该系统的主要手段,即过程中,通过软件对系统各个模块功能的调试。该系统的核心有以下几个部分:lcd控制、i²c通信协议,以及NTC热敏电阻特性曲线和补偿算法。
由于该系统功能简单,元器件数量较少,最终可以在单片机学习板上实现。由于仿真和实际学习板的条件不同,使用软件仿真是时采用AT89S51单片机,实际调试时使用STC89C52RC单片机,其功能完全兼容AT89S52单片机。
关键词:温度检测、51单片机、i²c通讯、NTC热敏电阻、仿真
目录
一、设计要求 (2)
1.1 设计要求分析 (2)
二、方案设计和选定 (3)
2.1文献综述 (3)
2.1.1 单片机模块 (3)
2.1.2 AD转换模块 (3)
2.1.3 显示模块 (4)
2.1.4 报警模块 (5)
2.1.5 测温模块 (5)
2.1.6 输入模块 (5)
2.2 最终方案选定 (6)
2.3硬件成本计算 (7)
三、硬件设计(基于proteus) (8)
3.1 仿真原理图设计 (8)
3.2 仿真器件选择及参数设定 (11)
四、程序设计 (12)
4.1程序流程图 (12)
4.2 LCD显示程序 (13)
4.3 PCF 8591控制程序 (16)
4.3测温电路算法设计 (16)
4.5 报警模块和按键模块程序设计 (27)
五、调试过程 (30)
5.1 软硬件调试 (30)
5.2 运行效果展示 (31)
六、设计总结............................................................................................. 错误!未定义书签。参考文献. (35)
附录:源程序 (36)
一、设计要求
温度检测及报警
实现具有温度检测、显示、以及报警功能的温度检测应用系统,功能指标如下:(1)满足通用要求;
(2)温度采集及显示精度为1位小数;
其中:
*通用要求
1、人机接口:可选择开关、按键、发光管、LED数码管、点阵字符LCD、图形字符LCD等;
2、模拟器件:可选择A/D、D/A、运放、模拟开关等,其中A/D、D/A要求是串行接口类;
3、传感器:要求是模拟量输出。
1.1 设计要求分析
在现有的条件和一定的成本控制下,应该尽可能提高温度检测的精度和响应速度。在显示方面应该尽可能清晰直观,设定操作也应该简单方便。满足通用要求即系统可以提供人机交互,应通过显示模块显示被测参数,且可以通过按键或开关对系统进行设置。模拟器件要求是串行接口,可以节省io资源,但是编程相对较为复杂。传感器要求模拟量输出,则不能使用数字温度传感器,如18B20数字温度传感器。
设计一个具有温度检测、显示、以及报警功能的温度检测应用系统,可以分为温度检测模块检测温度,显示模块用于显示温度值和其他信息,报警模块用来提供警报,系统的核心应由单片机系统完成信息和用户操作的处理。
对于各个模块的方案分析和选用,在下一章节进行详细的说明。
二、方案设计和选定
2.1文献综述
查阅相关资料之后,在各个模块的选用方案在考虑成本、性能、设计要求和使用环境的前提下,最终做出较为合适的选择。系统方案的最终目标是在考虑成本的前提下,尽量提高系统的易用度、提高温度检测的精度。
各个模块的方案比较和选用具体如下:
2.1.1 单片机模块
由于系统目标功能比较简单,所以核心微控制器可以采用成本低廉、应用非常广泛的8位单片机。根据实际情况,有以下几种单片机可供选择:51单片机、avr单片机、stm8、pic单片机等。
相比于其他几类单片机,51单片机在功能、价格、稳定性、处理速度上均不具特别优势,但是由于其使用比较简单、价格足够便宜、例程丰富和在现有软硬件资源限制下,最终选择8051核心的AT89S51增强版单片机。
AT89S51单片机是Atmel公司的产品,其具有4组8位双向IO口,内部集成2个16位定时器/计数器、两个外部中断以及一个全双工异步uart通信接口,此外片内集成4KB flash ROM和128B高速RAM。该单片机可工作于0-33MHz速度下,其性能足以用来设计该温度检测系统。
2.1.2 AD转换模块
由于该款单片机内部未集成AD转换功能,所以需采用一片外部AD转换芯片。常用的AD芯片由转换方法可分为积分型、逐次比较型、电容阵列逐次比较型等等。AD 转换芯片的分辨率越高、转换速度越快,其价格越高。受限于成本要求和应用场景,主要有以下几款芯片待选:TLC5510、ADC0809、AD574、PCF8591。以上四种AD转换芯片都具有8位或12位的转换精度,但是其转换类型各有不同,输入通道数量也有所不同,成本都比较适中。
由于设计要求使用串行接口的芯片并且要求检测和显示精度为小数点后一位,并且