1 / 17
文档名称:

最新单片机实验报告-温度计.docx

格式:docx   大小:1,249KB   页数:17页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

最新单片机实验报告-温度计.docx

上传人:小果冻 2022/5/16 文件大小:1.22 MB

下载得到文件列表

最新单片机实验报告-温度计.docx

文档介绍

文档介绍:单片机实验报告-温度计
成绩:
滨江学院
单片机原理及应用
实验工程 温度计DS18B20 出温度子程序的主要功能是读出RAM中的9字节。在读出时必须进行CRC校验,校验有错时不能进行温度数据的改写。读出温度子程序流程图如以下图所示:
读出温度子程序 读出温度子程序的主要功能是读出RAM中的9字节。在读出时须进行CRC校验,校验有错时不进行温度数据的改写。得出温度子程序流程图如以下图所示。
温度转换命令子程序主要是发温度转换开始命令。当采用12位分辨率时,转换时间约为750ms。在本程序设计中,采用1s显示程序延时法等待转换的完成。温度转换命令子程序流程图如以下图所示。
计算温度子程序 计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定。计算温度子程序流程图如下左图所示.
现实数据刷新子程序 现实数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高数据显示位为0时,将符号显示位移入下一位。现实数据刷新子程序流程图如下右图所示.
四、实验操作过程
系统的调试以程序调试为主。
硬件调试比较简单,首先检查电感的焊接是否正确,然后可用万用表测试或通电检测。
软件调试可以先编写显示程序并进行硬件的正确性检验,然后分别进行主程序、读出温度子程序、温度转换命令子程序、计算温度子程序和现实数据刷新子程序等的编程及调试
由于DS18B20与单片机采用串行数据传送,因此,对DS18B20进行读/写编程时必须严格地保证读/写时序;否那么将无法读取测量结果。 C51编译器编程调试。
软件调试到能显示温度值,并且在有温度变化时显示温度能改变,救根本完成。。由于DS18B20的精度很高,℃以内。
另外,-55~+125℃的测温范围使得该温度计完全适合一般的应用场合,其低电压供电特性可做成用电池供电的手持温度计。
DS18B20温度计还可以在上下温报警、远距离多点测温控制等方面进行应用开发,但在实际设计中应注意以下问题;
1、,总线上挂接点数较多且同时进行转换时要考虑增加总线驱动,可用单片机端口在温度转换时导通一个MOSFET供电。
2、连接DS18B20的总线电缆是有长度限制的,因此在用DS18B20进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配等问题。
3、在DS18B20测温程序设计中,向DS18B20发出温度转换命令后,程序总要等待DS18B20的返回信号。一旦某个DS18B20接触不好或断线,当程序读DS18B20时,将没有返回信号,程序进入死循环。这一点在进行DS18B20硬件连接和软件设计时要给予一定的重视。
五、实验现象
六、实验总结
本次课程设计即将进入尾声,回想这两周来的电子设计制作经历,我感触甚是深刻。通过本次课程设计,使我对电子设计及制作产生了较为浓厚的兴趣,这不仅加强了自己对理论知识的理解和稳固,还能提高自己的动手能力,可以说受益匪浅。当然更重要的是,激起了我学好单片机的斗志。
本次课程设计主要分为四局部:设计、仿真、调试。这三个步骤在整个课程设计过程中起着重要的作用。
本次毕业设计是针对MCS-52系列的单片机芯片STC89C52来设计一个数字温度计,该设计充分利用了温度传感器DS18B20功能强大的优点,如DS18B20可以直接读出被测温度值,进行转换;而且采用三线制与单片机相连,减少了外部的硬件电路,具有低本钱和易使用的特点,大大简化了硬件电路,也使得该数字温度计不仅具有结构简单、本钱低廉、精确度较高、反响速度较快、数字化显示和不易损坏等特点,而且性能稳定,适用范围广,因此特别适用于对测温要求比较准确的场所。
附录:程序代码
#include <>
#define uchar unsigned char
#define uint unsigned int
sbit DS=P2^2;
uint temp;
uchar flag1;
sbit dula=P2^6;
sbit wela=P2^7;
unsigned char code table