- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字温度计的设计与实现
一、实验目的
1.了解DS18B20数字式温度传感器的工作原理。
2.利用DS18B20数字式温度传感器和微机实验平台实现数字温度计。
二、实验内容与要求
采用数字式温度传感器为检测器件,进行单点温度检测。用数码管直接显示温度值,微机系统作为数字温度计的控制系统。
1.基本要求: (1)检测的温度范围:0℃~100℃,检测分辨率0.5℃。
(2)用位数码管显示
图1?DS18B20引脚分布图
图2 64位ROM结构图
DS18B20高速暂存器共9个存储单元,如表所示:
序号 寄存器名称 作??? 用 序号 寄存器名称 作??? 用 0 温度低字节 以16位补码形式存放 4 1 温度高字节 6、7 保留 2 TH/用户字节1 存放温度上限 8 CRC 3 HL/用户字节2 存放温度下限 高8位 S S S S S 26 25 24 低8位 23 22 21 20 2-1 2-2 2-3 2-4 指??? 令 约定代码 操????? 作??? 说? ????明 温度转换 44H 启动DS18B20进行温度转换 读暂存器 BEH 读暂存器9个字节内容 写暂存器 4EH 将数据写入暂存器的TH、TL字节 复制暂存器 48H 把暂存器的TH、TL字节写到E2RAM中 重新调E2RAM B8H 把E2RAM中的TH、TL字节写到暂存器TH、TL字节 读电源供电方式 B4H 启动DS18B20发送电源供电方式的信号给主CPU DS18B20器件要求采用严格的通信协议,以保证数据的完整性。该协议定义了几种信号类型:复位脉冲,应答脉冲时隙;写0,写1时隙;读0,读1时隙。与DS18B20的通信,是通过操作时隙完成单总线上的数据传输。发送所有的命令和数据时,都是字节的低位在前,高位在后。
复位和应答脉冲时隙
每个通信周期起始于微控制器发出的复位脉冲,其后紧跟DS18B20发出的应答脉冲,在写时隙期间,主机向DS18B20器件写入数据,而在读时隙期间,主机读入来自DS18B20的数据。在每一个时隙,总线只能传输一位数据。写时隙
当主机将单总线DQ从逻辑高拉逻辑低时,即启动一个写时隙,所有的写时隙必须在60~120us完成,且在每个循环之间至少需要1us的恢复时间。写0和写1时隙如图所示。在写0时隙期间,微控制器在整个时隙中将总线拉低;而写1时隙期间,微控制器将总线拉低,然后在时隙起始后15us之释放总线。读时隙
?? DS18B20器件仅在主机发出读时隙时,才向主机传输数据。所以在主机发出读数据命令后,必须马上产生读时隙,以便DS18B20能够传输数据。所有的读时隙至少需要60us,且在两次独立的读时隙之间,至少需要1us的恢复时间。每个读时隙都由主机发起,至少拉低总线1us。在主机发起读时隙之后,DS18B20器件才开始在总线上发送0或1,若DS18B20发送1,则保持总线为高电平。若发送为0,则拉低总线当发送0时,DS18B20在该时隙结束后,释放总线,由上拉电阻将总线拉回至高电平状态。DS18B20发出的数据,在起始时隙之后保持有效时间为15us。因而主机在读时隙期间,必须释放总线。并且在时隙起始后的15us之内采样总线的状态。
图5 电路结构框图
在硬件上,DS18B20与单片机的连接有两种方法,一种是Vcc接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDD、GND接地,I/O接单片机I/O。无论是内部寄生电源还是外部供电,I/O口线要接5KΩ左右的上拉电阻。
六、软件设计
系统程序主要包括主程序、读出温度子程序、温度转换子程序、计算温度子程序、显示数据刷新子程序等等。
1.主程序
主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量温度值,温度测量每1s进行一次,其程序流程图如图6。
图6 主程序流程图
2.读出温度子程序
读出温度子程序的主要功能是读出RAM中的9字节,在读出时需要进行CRC校验,校验有错时不进行温度数据的改写。其程序流程图如图7所示。
图7 读出温度子程序流程图
3.温度转换命令子程序
温度转换命令子程序主要是发温度转换开始命令,当采用12位分辩率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。温度转换命令子程序流程图如图8所示。
4.计算温度子程序
计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定
您可能关注的文档
- DICE-DPJ-3型单片机.微机开发综合实验装置.doc
- 蓝牙开发.doc
- 单片机课程设计--数字温度计-.doc
- 数字温度计课程设计报告-.doc
- 蓝牙立体多声道无线音频系统.doc
- 能源电力行业发展动态2011年第12期.doc
- 2011年中国经济宏观调控与软着陆问题.doc
- 51单片机的数字电压表.doc
- 蓝牙技术在汽车上的应用.doc
- 基于C51单片机的MP3播放器设计.doc
- 2025年外研版四年级下册英语Module 4综合检测试卷及答案.pptx
- 2025年人教版七年级下册历史期中检测试卷及答案.pptx
- 2024-2025年中考生物一轮复习高频考点:科学探究(解析版).docx
- 2025年人教版七年级下册历史第一单元第2课唐朝建立与“贞观之治”.pptx
- 2025年人教版七年级下册历史期末复习专题五学史方法一如何读懂文献史料.pptx
- 2025年外研版四年级下册英语Module 3综合检测试卷及答案.pptx
- 2025年沪科版九年级下册数学期末复习专题24.6 切线的综合(压轴题专项讲练)(原卷版).docx
- 2025年外研版三年级下册英语Unit 2综合检测试卷及答案.pptx
- 2025年外研版三年级下册英语Unit 5综合检测试卷及答案.pptx
- 2025年外研版三年级下册英语Unit 4综合检测试卷及答案.pptx
文档评论(0)