张 健
(江苏安全技术职业学院,江苏 徐州 221011)
浅析单片机控制的电池温度管理系统
张 健
(江苏安全技术职业学院,江苏 徐州 221011)
本文介绍了用STC89C52单片机实现电池温度检测的硬件实现方法,重点介绍了单片机STC89C52、LCD1602液晶显示、A/D转换器ADC0832及温度传感器DS18B20等重要器件。
STC89C52单片机;LCD1602液晶显示;DS18B20温度传感器
1.1 电池温度检测的方法
电池在使用的过程中,随着化学能不断转化成电能,电池内部的温度会上升。如果因异常因素导致电池持续放电或过度放电,电池温度会越来越高。检测电池温度的方法是通过温度传感器直接与电池外表接触来监测电池的表面温度。这里我们借助温度传感器DS18B20来采集电池表面温度。
1.2 单片机的选择
单片机在业界又被称为“微控制器”,具体来说,单片机的组成有中央处理器CPU、I/O 接口和存储器,通过内部的总线将CPU、存储器和I/O 接口相连,麻雀虽小,五脏俱全,所以说单片机是一台微型计算机一点也不为过。我们采用的是STC89C52单片机,STC89在8051基础上增加了许多功能,STC89C52内部具有8KB ROM 存储空间,拥有512字节的数据存储空间,EEPROM存储空间为2K字节,内置的flash ROM 可供反复擦写10万次,可与MCS-51系列的单片机兼容,通过串口STC89C52可以实现下载。其内置看门狗硬件,极大提高了MCS51家族的性能。
1.3 显示方案的选择
液晶显示屏被广泛应用于生活中的方方面面,比如生活中常见的计算器、电子表以及电子测量工具万用表等很多家用电子产品,都有液晶显示屏的影子。所以不管对于专业还是非专业的人们,液晶显示屏都不算陌生。我们采用了1602液晶显示,有160个不同的点阵字符图形存储在1602液晶模块内部的字符发生存储器(CGROM),故LCD1602可以显示数字和英文。常见字符有:大小写的英文字母、阿拉伯数字、常规符号。操作1602液晶对于我们来说相对熟悉一些,其显示功能也比较强大,实用性很强,还可以显示自定义字符,故采用此方案。
2.1 单片机系统
采用STC89C52最小系统,最小系统是指工作能正常进行的最简单电路。STC89C52最小应用系统电路如图1所示,它包含五个电路部分:电源电路、时钟电路、复位电路、片内外程序存储器选择电路、输入/输出接口电路。其中电源电路、时钟电路、复位电路是保证单片机系统能够正常工作的最基本的三部分电路,缺一不可。
图1 STC89C51最小系统Fig.1 STC89C51 minimum system
2.2 LCD1602显示模块设计
模块设计的前提是显示模块必须要采用能够显示工业字符的液晶,而LCD1602则可以完全满足要求。1602的内容成两排显示,一排能够显示16个字符,总共可以显示32个字符。我们在市场上能够看到的1602字符液晶一般只有两种,其原理是相同的,只是一种背光为绿色,呈现黑色字体;另一种是白色字体而背光为蓝色,这一次选择的液晶模块为白色字体、蓝色背光的液晶显示。
液晶显示屏的画面质量高而且不会闪烁,其工作方式是显示器的每个点在接收到信号后就一直保持这种色彩和亮度,恒定发光,与阴极射线管显示器(CRT)这种需要不断刷新新亮点有所不同。同时液晶显示器都是数字显示器,而且具有功耗低、体积小,重量轻等众多优点。1602字符液晶接口如图2所示。
图2 1602字符液晶Fig.2 Character LCD 1602
而本次设计中,1602字符液晶显示是用单片机进行控制,其接线图如图3所示。
图3 LCD1602与单片机的连接Fig.3 Connection of LCD1602 and SCM
2.3 A/D转换模块
对于A/D转换模块而言,难度最大的就是对于模拟信号的采样工作,之所以出现这样的难度主要是由于模拟信号在输入时其在时间上具有连续性,但是成功转换成数字信号后其信号代码本身是离散的,因此其在进行信号采样时必须瞬间进行选定,这种选定点主要依据时间座轴来规定。在采样完成后,将采样值转换为数字量。因此,一般的A/D转换过程是通过采样保持、量化和编码这三个步骤完成的,即:首先对输入的模拟电压信号采样,然后进入到保持时间,在这段时间内将采样的电压量转化为数字量,并按一定的编码形式给出转换结果,然后开始下一次采样。
我们这里使用的A/D转换模块采用的是ADC0832芯片,与单片机接线图如图4所示。
图4 ADC0832与单片机的接口电路Fig.4 Interface circuit of ADC0832 and SCM
2.4 DS18B20温度检测模块
DSl8B20是美国DALLAS半导体公司推出的第一片支持“一线总线”接口的温度传感器,它具有微型化、低功率、高性能、抗干扰能力强、易配微处理器等优点,可直接对温度转化成串行数字信号供处理器处理。
DSl8B20在工作时可直接从总线上获得能量。DS18B20的测量最低温度为55℃,最高温度为125℃,为“一线总线”接口,现场温度采用数字式传输,可以增强系统的抗干扰能力。GND为电源地,VCC作为外接供电输入端,DSl8B20的作用是直接将温度数值转换成数字量。
温度采集连线电路图,如图5所示。DSl8B20的2脚接系统中单片机的输入端,用于将采集到的温度送入单片机中处理。
2.5 报警模块
采用声光报警,电池温度不在正常范围时,系统的蜂鸣器可以响铃提示,LED灯发光。在蜂鸣器的选择上,无论是有源的还是无源的,我们都可以通过单片机控制驱动信号来使它发出不同音调的声音。
图5 温度采样电路Fig.5 Temperature sampling circuit
在实际调试的过程中会遇到很多问题,如:单片机不工作,解决方法是重新换一个晶振;无法初始化DS1302,解决方法是将DS1302虚焊部分重新焊接;液晶显示时断时续,解决方法是重焊管脚并调节阻值。
通过应用电池的温度管理系统,能够极大提高电池工作的安全性,这套系统原理也同样适用于电池的电压管理和电路管理,希望能给相关专业的人员提供些许参考。
[1] 侯玉宝等.基于Proteus的51系列单片机设计与仿真[M].北京:电子工业出版社,2008.
[2] 李庆亮.C语言程序设计实用教程[M].北京:机械工业出版社,2005.
[3] 康华光.电子技术基础数字部分[M].北京:高等教育出版社,2008.
[4] 唐勇.基于单片机的电子钟的设计[M].湖南:湖南工学院,2007.
[5] 张义和,等.例说51单片机(C语言)[M].北京:人民邮电出版社,2008.
Analysis of battery temperature management system controlled by single chip microcomputer
ZHANG Jian
(Jiangsu Security Technology Career Academy, Xuzhou 221011, China)
This paper introduces the method to fulfill the battery temperature detection by using STC89C52 SCM. It mainly introduces the important devices such as SCM STC89C52, LCD1602 liquid crystal display, A/D converter ADC0832 and temperature sensor DS18B20.
STC89C52 SCM; LCD1602 liquid crystal display; DS18B20 temperature sensor
2016-09-19
张健(1985-),男,学士,讲师。
TM912
A
1674-8646(2016)22-0034-03