- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于单片机的单总线温度测量仪设计
1 温度信号转换模块
图1显示了sd18b20温度控制的外部形状。DS18B20的电路很简单,由一片DS18B20和一只4.7kΩ 的上拉电阻构成。DS18B20内集成了一个温度传感器、64位ROM、9字节RAM、3字节EERAM(掉电可保存),可将温度信号转换为数字信号直接输出。DS18B20与外部的接口为单总线方式,即数据的输入、输出及同步均由同一根线完成。其温度测量范围为-55℃~125℃,在-10℃~80℃范围内精度为±0.5℃,输出的温度值可编程为9~12位。VD接电源,3V~5V;GND为地;DQ为数据的输入输出。DQ作为输出时为漏极开路,必须加4.7kΩ的上拉电阻。
2 ds18b20的工作过程
DS18B20传感器进行的功能操作是在发送命令的基础上完成的,上电后传感器处于空闲状态,需要控制器发送命令才能完成温度转换。对传感器的功能操作的次序是首先完成对芯片内部的ROM操作,有5条操作ROM的指令可用于器件识别,它们分别是:Read ROM(33H)、Match ROM(55H)、Skip ROM(CCH)、Search ROM(F0H)、Alarm Search(ECH)。
Read ROM:用于读出64位ROM数据,适用于仅有1个DS18B20的场合。
Match ROM:查找与给定64位ROM数据相匹配的DS18B20。
Skip ROM:适用于仅有1个DS18B20的场合,无需给出64位码就能快速选定器件。
Search ROM:适用于多个DS18B20的场合,该指令可识别出每个器件的ID号。
Alarm Search:用于温度报警查询。
9字节RAM中,字节1、2用来存放当前测量的温度值,1为低8位,2为高8位;字节3、4用来存放预设报警温度的上下限值,3为上限,4为下限;字节5用于配置寄存器,确定温度数据的位数,相关位为D5、D6,和温度位数的对应关系如表1所示,字节5的其余位均为无关位;字节6、7、8均为保留字节,一般不用;字节9存放前8个字节循环冗余校验码(CRC码)。
3字节的EERAM分别对应于RAM区的字节3、4、5,用于备份系统设置。
对RAM的操作指令有6条,分别为:Write(4EH)、Read(BEH)、Copy(48H)、Convert(44H)、Recall(B8H)、Read Power(B4H)。
Write:写RAM存储器,随后的3个字节分别写入RAM字节3、4、5,该指令必须在复位操作前完成。
Read:读出RAM中所有9个字节的数据,该指令可随时被复位操作所终止。
Copy:将RAM区的3、4、5字节备份至EERAM。
Recall:将EERAM中的数据装入RAM。
Convert:温度转换开始指令。
Read Power:读电源指令,此处不作介绍。
对DS18B20的每一次操作均由4个步骤组成:
(1)初始化(复位操作);(2)对ROM操作指令(识别器件);(3)对RAM操作指令(读、写、转换);(4)收发数据,时序图如图2所示。
初始化过程如下:
主控器将信号线拉低,持续时间T1(480μst1960μs);
主控器等待时间T2(15μst260μs);
主控器检测信号线,若为低,进行下一步,否则重新初始化;
主控器在240μs内等待信号线变高,如变高表示初始化完成,否则重新初始化;
主控器延时至少480μs,确保应答正确;
在收发数据过程中,每一位的读写时间应至少持续60μs,以确保读写正确。
3 ds18b20工作原理
以MCS-51单片机为例,图3采用寄生电源供电,P1.1口接单线总线,为保证在有效DS18B20时钟周期内提供足够的电流,可用一个MOSFET管和89C51的P1.0来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D变换操作时,总线上必须有强上拉,上拉开启时间最大为10μs。采用寄生电源供电方式时VDD和GND端均接地。由于单线制只有一根线,因此发送接收口必须是三态的。主机控制DS18B20完成温度转换必须经过初始化、ROM操作指令、存储器操作指令三个步骤,假设单片机系统所用的晶振频率为12MHz,根据DS18B20的初始化时序、写时序和读时序,分别编写RESET为初始化子程序,WRITE为写(命令或数据)子程序,READ为读数据子程序。
DS18B20初始化,读、写一个字节的程序如下:
RESET:
L0: CLR P1.0
MOV R2, #230
L1: NOP
DJNZ R2, L1
SETB P1.0 ;主机发置位脉冲持续600μs
MOV R2, #35
L4: DJNZ R2, L4 ;等待60μs
CLR C
ORL C, P1.0 ;数据线应变低
JC L0 ;没准备好,重新初始
您可能关注的文档
最近下载
- 宽温超低功耗软磁铁氧体磁芯研制工作及技术总结报告.doc VIP
- 心脏病人非心脏手术的麻醉.pptx VIP
- 钢丝绳推车机结构设计 毕业设计.doc VIP
- 水泵与水泵站课程设计计算说明书.doc VIP
- 2025年浙江高中学业水平考试模拟物理试卷试题(含答案详解)_可搜索.pdf VIP
- 两轮自平衡小车设计与研究.docx VIP
- 2026国家粮食和物资储备局直属联系单位应届毕业生招聘28人笔试备考试题及答案解析.docx VIP
- 陈先红公共关系学原理课后习题答案.pdf VIP
- 湖北省武汉市江夏区2024-2025学年三年级上学期期末调研测试语文试卷.docx VIP
- 丙烯腈催化水合合成丙烯酰胺研究.pdf VIP
原创力文档


文档评论(0)