微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于STC89C52单片机的温度检测系统设计

基于STC89C52单片机的温度检测系统设计

时间:01-16 来源:互联网 点击:



3 软件设计
主程序流程如图9所示。


3.1 液晶显示器函数
液晶显示器的读/写数据和数字/字符、温度显示、曲线绘制和时钟显示等功能由驱动函数和界面显示函数完成。
驱动函数包括:

界面显示函数包括:

3.2 温度采集函数
启动DS18B20温度转换和数据传输必须严格按照其时序进行,温度采集函数包括:

3.3 主函数
主函数包括初始化液晶显示器,定时/计数器等模块,而后调用温度采集,界面显示等函数。

每50 ms采样一次(即每50 ms调用上述温度采集函数),共采样6次,利用去极值平均值滤波法得到实测温度(采样的6个数据排序后去掉最大值和最小值再平均),显示实测温度,绘制曲线,并判断是否超限。

4 实验
系统实际运行结果如图10~图13所示。


左边显示包括:
(1)“12/06/21”为阳历日期,格式为年/月/日。
(2)“16:59:09”为数字时钟,格式为小时:分钟:秒。
(3)“S:30℃”代表设定的上限温度;“”,“=”,“>”代表上限温度与实测温度的大小关系。
(4)“46.84℃”,“26.35℃”,“31.23℃”,“40.99℃”等代表实测温度。
图中右边为温度曲线和上限温度线。
时间和温度上限值可通过程序或键盘设定。
实测温度的误差范围(单位:℃)在(-0.5~0.5)/100内,绘制的温度曲线能够直观地反映其变化情况。

5 结论
利用点阵型液晶显示器和单片机直接接口显示被测温度和绘制曲线,可以更直观地反映其变化趋势,为后续研究其变化规律奠定基础。实际运行表明,系统测试精度、曲线绘制、超限报警等功能达到设计要求,整个电路简单实用,稳定可靠。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top