您的当前位置:首页正文

基于单片机的温度测量及显示系统设计与实现

2020-06-22 来源:好走旅游网
龙源期刊网 http://www.qikan.com.cn

基于单片机的温度测量及显示系统设计与实现

作者:王宇飞

来源:《中国科技纵横》2012年第13期

摘要:旨在讨论AT89S52、DS18B20、12864的功能及特点,设计出以AT89S52单片机为主控,12864液晶为显示的温度测量系统。

关键词:AT89S52单片机 DS18B20温度传感器 12864液晶

单片机自上世纪70年代问世以来,以其性价比高、体积小、重量轻、可靠性高、开发容易、灵活性好、抗干扰能力强等特点,受到人们的关注和重视,得到了广泛的发展和推广,现在已经被广泛的应用在了工业自动化控制、智能仪器仪表、自动检测、数据采集系统、家用电器、机电一体化、通讯设备、智能家居等各个方面。DS18B20是美国的DALAS公司生产的一种新型数字温度传感器,其具有接口简单、测温精度高、范围宽等特点,其“一线总线”的设计便于构成测温网络,能够大大降低连线费用。液晶显示器(LCD)为一种被动式的显示器,具有驱动功耗低,容易与CMOS集成电路相匹配的特点,从而广泛应用在低功耗便携式仪器仪表及袖珍显示器上。本文将设计以单片机为主控MCU的温度测量及显示系统。 1、AT89S52、DS18B20、12864概述 1.1 AT89S52单片机

AT89S52是一款高性能、低功耗的CMOS 8位微控制器,系统内具有8K的可编程Flash存储器。同时使用Atmel公司非易失性高密度存储器技术制造,与80C51产品的指令和引脚完全兼容。在单芯片上,拥有8位CPU以及在线可编程Flash存储器,能够为众多嵌入式控制应用系统提供超有效、高灵活的解决方案。AT89S52具有以下标准功能:256字节RAM,8K字节Flash,32位I/O口线,2个数据指针,3个l6位定时器/计数器,看门狗定时器,1个6向量2级中断结构,片内晶振及时钟电路,全双工串行口等。另外,AT89S52支持2种软件可选的节电模式。空闲模式时,在CPU停止工作的情况下,允许RAM、定时/计数器、中断、串口等继续工作。具有掉电保护模式,掉电后单片机停止一切工作,振荡器被冻结,RAM内容被保存,直到硬件或下一个中断复位为止。

1.2 DS18B20数字温度传感器

DS18B20采用数字信号方式进行输出,提高了信号的抗干扰能力以及温度测量的精度。DS18B20具有宽工作电压(3.0~5.5V),同时可采用外部方式供电,也可采用寄生电源方式供电。此外,DS18B20还具有负压特性,当电源极性接反时,不会因接错线而烧毁DS18B20。但是,此时

龙源期刊网 http://www.qikan.com.cn

DS18B20不能正常工作,同时可以通过编程设置9~12位的温度转换精度。其采用3脚TO—92封装,另外还有6脚的TSOC封装和8脚SOIC封装。DS18B20测温范围为-55~+125℃,当测温范围在-10~+85℃时,精度为±0.5℃。每个DS18B20芯片的ROM中存放一个64位ID号:0~7位是产品类型编号,8~55位是该器件的自身序号,56~63位是前56位的循环冗余校验码。由于DS18B20可采用寄生电源方式供电,所以一条总线上可同时挂接多个DS18B20,从而实现多点测温。另外,用户还可以根据实际情况进行设定非易失性温度报警的上下限值TH、TL,当其读入到温度值并经转换为数字量后,将自动存入存储器中,与设定值TH或TL比较,若检测到的温度超出了给定范围,DS18B20就会输出报警信号,同时自动识别为低温超限还是高温超限。 1.3 SMG12864G2-ZK液晶显示模块

一般的12864除了具有VDD逻辑电源(正)、VSS逻辑电源(负)外,还有片选引脚CSA、CSB、数据/指令选择引脚D/I、读/写选择引脚R/W、读写使能引脚E、数据输入输出引脚D0-D7、VO脚等主要的控制脚,是通过改变VO引脚上的电压来调整液晶显示的对比度。SMG12864G2-ZK为128×64点阵的汉字图形型液晶显示模块,能够显示汉字、图形,内置国标GB2312码简体中文字库(16X16点阵)、128个字符(8X16点阵)及64×256点阵显示RAM(GDRAM)。SMG12864G2-ZK能与CPU直接接口,提供两种8位并行及串行两种连接方式来连接微处理机,具有光标显示、画面移位、睡眠模式等多种功能。 2、硬件电路分析

系统硬件电路由主控制器AT89S52、DS18B20测温电路和12864液晶显示电路3个模块组成。DS18B20具有其独特的单线接口方式,在硬件电路设计上,主控制器AT89S52与DS18B20连接时,不需要使用任何外围元件,通过一条口线就可以与DS18B20进行双向通信,实现对DS18B20的控制,并将DS18B20传感器采集到的数据传送到AT89S52,通过12864液晶显示出来。使用中可用数据线供电。

电源电路正常工作时,输入电压为9V时,输出电压差为3~5V,电路中接入的电容C13,其容量较小,用于抵消输入线较长时的电感效应,从而防止电路产生自激振荡。用C12来消除输出电压中的高频噪声,实现频率补偿。C11为极性电解电容,用来减小由输入电源引入对稳压电压输出端的电平干扰。 3、软件设计

主程序的任务是控制单总线,实现系统的初始化、DS18B20的初始化、12864的初始化,并调用温度采集、数据处理、12864显示等子程序。其中DS18B20初始化、12864初始化的流程图不再画出,读者可参考对应的数据手册的控制时序进行学习。 4、结语

龙源期刊网 http://www.qikan.com.cn

本文对AT89S52、DS18B20、12864的功能及特点进行了详细阐述,设计出了电源供电、最小系统、液晶显示等电路原理图,并进行了说明,最后给出了主要程序流程图。实践证明本系统硬件电路设计简单,程序简洁,通用性强,具有人机交互界面。 参考文献

因篇幅问题不能全部显示,请点此查看更多更全内容