- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
分布式测温中传感器时序与温度读取研究
时间:2009-02-24 10:27:56 来源:微计算机信息 作者:
在分布式测温系统中应用了大量的新型传感器DS18B20,DS18B20是单总线数字温度传感器其硬件接线简单,但时序非常复杂。要实现温度的正确读取,既要有对DS18B20的ROM操作命令,又有一些功能命令。这些命令的执行,既有一定顺序,又有特定含义。都需要基于数字温度传感器初始化时序、写时序和读时序,按照严格的时序配合才能完成温度正确采集与读取。因此要想正确使用单总线数字温度传感器,必须分析其时序关系,并且基于时序编制正确程序。单总线数字温度传感器时序分析与应用研究具有及其重要意义。
2.数字温度传感器时序DS18B20与单片机只通过一条数据线连接,所以其数据的传输方式为串行方式。为了正确读取温度值,必须严格按照时序配合关系,进行程序编制。DS18B20有严格的通信协议来保证数据传输的正确性和完整性。通信协议规定了总线上的多种信号的时序。如:复位脉冲、响应脉冲、写0、写1、读0和读1等信号的时序。DS18B20是在严格的时序控制下进行正常操作的。换句话讲,就是用较为复杂的软件来换取简单的硬件接口。因此要正确使用DS18B20,就必须了解其初始化时序、写时序和读时序。
2.1?? 数字温度传感器初始化时序初始化时序有时也称复位时序,它是数据线上所有传输过程的开始。整个初始化过程由主设备发出的复位脉冲和DS18B20的响应脉冲组成。在主设备初始化的过程中,主设备通过拉低数据线至少480μS ,DS18B20即认为是接收到一个初始化脉冲,接着主设备释放数据线,在数据线上上拉电阻的作用下,数据线电平被拉高,并且主设备进入接收模式。在DS18B20检测到上升沿后,延时15~60μS ,接着通过拉低总线60~240μS以产生应答脉冲。初始化时序如图2所示。图1是图2、图3和图4的线型示意图。
???????????????? 图1??? 线型示意图???? 图2??? 初始化时序
在分布式测温系统中CPU采用AT89S52,温度读取的初始化程序如下所示:DAT??? BIT? P1.0INI10: SETB? DATMOV? R2, #185INI11: CLR? DATDJNZ? R2, INI11??? ; 复位脉冲时间600usSETB? DAT??? ; 释放数据线MOV? R2, #28INI12: DJNZ? R2, INI12??? ; 等待60usCLR? CORL? C, DAT??? ; 有无应答低电平JC? INI10??? ; 若无应答,初始化失败MOV? R6, #40INI13: ORL? C, DATJC? INI14??? ; 数据线变高。初始化成功DJNZ? R6, INI13??? ; 低电平最多240usSJMP? INI10??? ; 低电平持续大于240us,失败INI14: MOV? R2, #222INI15: DJNZ? R2, INI15??? ; 应答信号至少要持续480us???? RET
2.2? 数字温度传感器写时序写时序包括写“0”时序和写“1”时序。写“1”时序用于主设备向DS18B20写入1,写“0”时序用于主设备向DS18B20写入0。无论是哪种写时序都至少需要60μS ,且在两次独立的写时序之间至少需要1μS的恢复时间。两种写时序均起始于主设备拉低数据线电平。对于写“1”时序,主设备在拉低数据线之后,紧接着必须在15μS之内释放数据线,由上拉电阻将数据线拉至高电平;而对于写“0”时序,在主设备拉低数据线后,只需在整个时序内保持低电平即可至少60μS。在写时序开始后的15~60μS期间内,DS18B20读取数据线电平状态。如果此期间数据线为高电平 ,则对器件写入逻辑1,否则写入逻辑0。写时序如图3所示。
????? 图3??? 数字温度传感器写时序
写一位程序如下所示。程序中DAT为I/O口P1.0。WIR11: SETB? DAT? ; 拉高电平????????? MOV? R4, #5????????? NOP????????? CLR? DAT? ; 高电平持续2us后拉低WIR12: DJNZ? R4, WIR12? ; 等待10微秒?????????? MOV? DAT, C? ; 发送1位MOV? R4, #23WIR13: DJNZ? R4, WIR13? ; 保证写时间大于60us????????? SETB? DAT????????? RET
2.3?? 温度传感器读时序DS18B20只有在检测到主设备启动读时序后才向主设备传输数据。所以一般在主设备发送了读数据命令后,必
您可能关注的文档
- PROTEUS教学实验系统.ppt
- QT0001嵌入式系统在多点温度控制中的应用2QQ4991024.doc
- QT0001嵌入式系统在多点温度控制中的应用2-毕业论文网-QQ4991024.doc
- QtEmbedded在嵌入式Linux系统中的应用.doc
- RZ-51 单片机多功能综合实验板说明书.doc
- S3C44B0X VxWorks BSP 移植笔记.doc
- Schneider-施耐德LEC使用技巧文集[第3讲]——Twido PLC做为ASCII从站设备的通讯方法.doc
- Schneider-施耐德LEC使用技巧文集[第7讲]——如何用VB实现Twido的Modbus TCP IP的通讯.doc
- Schneider-施耐德LEC使用技巧文集[第9讲]——如何使用OFS 与 Twido通信.doc
- Schneider-施耐德LEC使用技巧文集[第10讲]——如何使用TwidoSoft macros comm宏功能.doc
最近下载
- 菲律宾结构设计规范NSCP chapter 1.pdf VIP
- 課程设计---四工位机床.doc VIP
- YAESU 八重洲 FT-8900R 四频段FM车载台 说明书.pdf VIP
- 2017年四川省成都市中考数学试卷及答案解析.pdf VIP
- HG_T 4196-2011 化学试剂 十水合碳酸钠(碳酸钠).docx
- 2024-2025学年小学科学四年级上册湘科版(2024)教学设计合集.docx
- 九年级美术上册第1课齐白石徐悲鸿备课岭南版.ppt VIP
- (高清版)DB32∕T 1702-2010 电力用户变电所运行规程 .pdf VIP
- 服装造型点线面.pptx VIP
- 十一自然资源配置.pptx VIP
文档评论(0)