手机版

基于C51单片机的温度控制系统应用系统设计(附程(11)

发布时间:2021-06-07   来源:未知    
字号:

低电平延时2us,然后主机转入输入模式延时12us,然后读取总线当前电平,然后延时50us[4]

3.2.2 ROM操作命令

当主机收到DSl8B20 的响应信号后,便可以发出ROM 操作命令之一,这些命令如表

2.2:ROM操作命令。

3.3 DS18B20的测温原理

3.3.1 DS18B20的测温原理:

每一片DSl8B20在其ROM中都存有其唯一的48位序列号,在出厂前已写入片内ROM 中。主机在进入操作程序前必须用读ROM(33H)命令将该DSl8B20的序列号读出。

程序可以先跳过ROM,启动所有DSl8B20进行温度变换,之后通过匹配ROM,再逐一地读回每个DSl8B20的温度数据。

DS18B20的测温原理如图2.4所示,图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 ℃所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55 ℃所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图2.3中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值.

表3-1 ROM操作命令

指令

读ROM

符合ROM 约定代码 33H 55H 功 能 读DS18B20 ROM中的编码 发出此命令之后,接着发出64位ROM编码,访问单线总线上与该编码相对应的DS18B20 使之作出响应,为下一

步对该DS18B20的读写作准备

搜索ROM 0F0H 用于确定挂接在同一总线上DS18B20的个数和识别64位

ROM地址,为操作各器件作好准备

跳过ROM 0CCH 忽略64位ROM地址,直接向DS18B20发温度变换命令,

适用于单片工作。

基于C51单片机的温度控制系统应用系统设计(附程(11).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)