《DS18B20温度传感器与单片机间的通信.doc》由会员分享,可在线阅读,更多相关《DS18B20温度传感器与单片机间的通信.doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流DS18B20温度传感器与单片机间的通信.精品文档.DS18B20温度传感器与单片机间的通信线(延长线)可以多长 20 标签:温度传感器,单片机,通信线 我需要延长50-100米,请问这是正常使用的距离还是要加特殊元件用它做探头,再弄个单片机,数码管,蜂鸣器成本很低吧,用两个18B20,延长线我选的是网线,当然线的成本是另算的,我指单片机读取显示部分成本就是很低? 答案 TS-18B20 数字温度传感器,该产品采用美国DALLAS公司生产的 DS18B20可组网数字温度传感器芯片封装而成,具有耐磨耐碰,体积小,使用方便,封装形式多样,适用于各
2、种狭小空间设备数字测温和控制领域。1: 技术性能描述 1.1 独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。1.2 测温范围 55125,固有测温分辨率0.5。1.31.4 工作电源: 35V/DC1.5 在使用中不需要任何外围元件1.6 测量结果以912位数字量方式串行传送1.7 不锈钢保护管直径 6 1.8 适用于DN1525, DN40DN250各种介质工业管道和狭小空间设备测温1.9 标准安装螺纹 M10X1, M12X1.5, G1/2”任选1.10 PVC电缆直接出线或德式球型接线盒出线,便于与其它电器设备连接。2:应
3、用范围 2.1 该产品适用于冷冻库,粮仓,储罐,电讯机房,电力机房,电缆线槽等测温和控制领域2.2 轴瓦,缸体,纺机,空调,等狭小空间工业设备测温和控制。2.3 汽车空调、冰箱、冷柜、以及中低温干燥箱等。2.5 供热/制冷管道热量计量,中央空调分户热能计量和工业领域测温和控制编辑本段|回到顶部3:产品型号与规格 型 号 测温范围 安装螺纹 电缆长度 适用管道TS-18B20 -55125 无 1.5 m TS-18B20A -55125 M10X1 1.5m DN1525TS-18B20B -55125 1/2”G 接线盒 DN40 60编辑本段|回到顶部4:特点 独特的一线接口,只需要一条口
4、线通信 多点能力,简化了分布式温度传感应用 无需外部元件 可用数据总线供电,电压范围为3.0 V至5.5 V 无需备用电源 测量温度范围为-55 C至+125 。华氏相当于是-67 F到257华氏度 -10 C至+85 C范围内精度为0.5 C温度传感器可编程的分辨率为912位 温度转换为12位数字格式最大值为750毫秒 用户可定义的非易失性温度报警设置 应用范围包括恒温控制,工业系统,消费电子产品温度计,或任何热敏感系统描述该DS18B20的数字温度计提供9至12位(可编程设备温度读数。信息被发送到/从DS18B20 通过1线接口,所以中央微处理器与DS18B20只有一个一条口线连接。为读写
5、以及温度转换可以从数据线本身获得能量,不需要外接电源。 因为每一个DS18B20的包含一个独特的序号,多个ds18b20s可以同时存在于一条总线。这使得温度传感器放置在许多不同的地方。它的用途很多,包括空调环境控制,感测建筑物内温设备或机器,并进行过程监测和控制。8引脚封装 TO-92封装 用途 描述 5 1 接地 接地 4 2 数字 信号输入输出,一线输出:源极开路 3 3 电源 可选电源管脚。见寄生功率一节细节方面。电源必须接地,为行动中,寄生虫功率模式。不在本表中所有管脚不须接线 。概况框图图1显示的主要组成部分DS18B20的。DS18B20内部结构主要由四部分组成:64位光刻ROM、
6、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。该装置信号线高的时候,内部电容器 储存能量通由1线通信线路给片子供电,而且在低电平期间为片子供电直至下一个高电平的到来重新充电。 DS18B20的电源也可以从外部3V-5 .5V的电压得到。DS18B20采用一线通信接口。因为一线通信接口,必须在先完成ROM设定,否则记忆和控制功能将无法使用。主要首先提供以下功能命令之一: 1 )读ROM, 2 )ROM匹配, 3 )搜索ROM, 4 )跳过ROM, 5 )报警检查。这些指令操作作用在没有一个器件的64位光刻ROM序列号,可以在挂在一线上多个器件选定某一个器件,同时,总线也可以知道总线上
7、挂有有多少,什么样的设备。若指令成功地使DS18B20完成温度测量,数据存储在DS18B20的存储器。一个控制功能指挥指示DS18B20的演出测温。测量结果将被放置在DS18B20内存中,并可以让阅读发出记忆功能的指挥,阅读内容的片上存储器。温度报警触发器TH和TL都有一字节EEPROM 的数据。如果DS18B20不使用报警检查指令,这些寄存器可作为一般的用户记忆用途。在片上还载有配置字节以理想的解决温度数字转换。写TH,TL指令以及配置字节利用一个记忆功能的指令完成。通过缓存器读寄存器。所有的数据都读,写都是从最低位开始。DS18B20有4个主要的数据部件: (1)光刻ROM中的64位序列号
8、是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。 (2) DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达,其中S为符号位。DS18B20内部结构主要由四部分组成:64位光刻ROM,温度传感器,温度报警触发器TH和T
9、L,配置寄存器。4.3.2存储器DS18B20的存储器包括高速暂存器RAM和可电擦除RAM,可电擦除RAM又包括温度触发器TH和TL,以及一个配置寄存器。存储器能完整的确定一线端口的通讯,数字开始用写寄存器的命令写进寄存器,接着也可以用读寄存器的命令来确认这些数字。当确认以后就可以用复制寄存器的命令来将这些数字转移到可电擦除RAM中。当修改过寄存器中的数时,这个过程能确保数字的完整性。高速暂存器RAM是由8个字节的存储器组成;第一和第二个字节是温度的显示位。第三和第四个字节是复制TH和TL,同时第三和第四个字节的数字可以更新;第五个字节是复制配置寄存器,同时第五个字节的数字可以更新;六、七、八
10、三个字节是计算机自身使用。用读寄存器的命令能读出第九个字节,这个字节是对前面的八个字节进行校验。4.3.3 64-位光刻ROM64位光刻ROM的前8位是DS18B20的自身代码,接下来的48位为连续的数字代码,最后的8位是对前56位的CRC校验。64-位的光刻ROM又包括5个ROM的功能命令:读ROM,匹配ROM,跳跃ROM,查找ROM和报警查找。4.3.4 DS18B20外部电源的连接方式DS18B20可以使用外部电源VDD,也可以使用内部的寄生电源。当VDD端口接3.0V5.5V的电压时是使用外部电源;当VDD端口接地时使用了内部的寄生电源。无论是内部寄生电源还是外部供电,I/O口线要接5
11、K左右的上拉电阻。 4.3.4 DS18B20温度处理过程4.3.4.1配置寄存器配置寄存器是配置不同的位数来确定温度和数字的转化。可以知道R1,R0是温度的决定位,由R1,R0的不同组合可以配置为9位,10位,11位,12位的温度显示。这样就可以知道不同的温度转化位所对应的转化时间,四种配置的分辨率分别为0.5,0.25,0.125和0.0625,出厂时以配置为12位。4.3.4.2 温度的读取DS18B20在出厂时以配置为12位,读取温度时共读取16位,所以把后11位的2进制转化为10进制后在乘以0.0625便为所测的温度,还需要判断正负。前5个数字为符号位,当前5位为1时,读取的温度为负
12、数;当前5位为0时,读取的温度为正数。16位数字摆放是从低位到高位。4.3.4.3DS18B20控制方法DS18B20有六条控制命令,如表4.1所示: 表4.1 为DS18B20有六条控制命令指 令 约定代码 操 作 说 明 温度转换 44H 启动DS18B20进行温度转换 读暂存器 BEH 读暂存器9个字节内容 写暂存器 4EH 将数据写入暂存器的TH、TL字节 复制暂存器 48H 把暂存器的TH、TL字节写到E2RAM中 重新调E2RAM B8H 把E2RAM中的TH、TL字节写到暂存器TH、TL字节 读电源供电方式 B4H 启动DS18B20发送电源供电方式的信号给主CPU 4.3.4.
13、4 DS18B20的初始化。(1) 先将数据线置高电平“1”。(2) 延时(该时间要求的不是很严格,但是尽可能的短一点)(3) 数据线拉到低电平“0”。(4) 延时750微秒(该时间的时间范围可以从480到960微秒)。(5) 数据线拉到高电平“1”。(6) 延时等待(如果初始化成功则在15到60毫秒时间之内产生一个由DS18B20所返回的低电平“0”。据该状态可以来确定它的存在,但是应注意不能无限的进行等待,不然会使程序进入死循环,所以要进行超时控制)。(7) 若CPU读到了数据线上的低电平“0”后,还要做延时,其延时的时间从发出的高电平算起(第(5)步的时间算起)最少要480微秒。(8)
14、将数据线再次拉高到高电平“1”后结束。4.3.4.5 DS18B20的写操作(1) 数据线先置低电平“0”。(2) 延时确定的时间为15微秒。(3) 按从低位到高位的顺序发送字节(一次只发送一位)。(4) 延时时间为45微秒。(5) 将数据线拉到高电平。(6) 重复上(1)到(6)的操作直到所有的字节全部发送完为止。(7) 最后将数据线拉高。4.3.4.6 DS18B20的读操作(1)将数据线拉高“1”。(2)延时2微秒。(3)将数据线拉低“0”。(4)延时15微秒。(5)将数据线拉高“1”。(6)延时15微秒。(7)读数据线的状态得到1个状态位,并进行数据处理。(8)延时30微秒。 提问人的
15、追问 2010-08-08 21:10 说的很多没有距离的答案啊,说说距离谢谢 回答人的补充 2010-08-10 18:23 连接DS18B20 的总线电缆有长度限制。当采用普通信号电缆传输长度超过50 m 时,读取的测温数据将发生错误。当将总线电缆改为屏蔽双绞线电缆时,通信距离可达到500m。因此,在用DS18B20 进行长距离测温系统设计时要选择多股屏蔽双绞线电缆。 50100m可能有点长,我没有试过那么长,那么长的话信号可能不稳定最好加些信号放大之类的吧,防止衰减 具体多长还真么测过,不过就你所要求的距离应该没有,串口传输的距离还是比较远的,具体的话你那个程序测试一下就知道啦。线的话用
16、一些便宜一点的就可以啦,买几米花线,里面就很多铜丝,抽出来,弄成一条很长的,花线也才一块钱一米,估计几米的花线就可以弄出比较长的线啦,不过要做好屏蔽,距离一远屏蔽就必须。 单片机群:36825409 刚建立 50100米真的太长了,试一下将DS18B20信号通过RS485传送,RS485传送距离很长,30倍你想要的距离。如果是RS232的话,最大也只能达到你的最小距离。 如果仅仅靠延长导线50100米可以说是不可能的。我提供几中解决方案:1、多加一块51单片机和485协议的转换芯片,采集以后用485发送到100外。2、成本要求不严格的话,可以用无线串口模块,网上有卖的。如果想自己动手做,可以用
17、51+24L01来做。3、想好玩一点呢,用串口经过放大驱动一个激光发射头,接收部分自己设计个简单的放大就能实现通信。如果采用第三种方案我们可以进一步探讨。 人生DIY 回答采纳率:25.0% 2010-08-21 10:05 我觉得50100米的距离有点长,要不再多加一块单片机,成本也不高嘛。实在不行,就选择加大信号放大的方法,用串口经过放大驱动一个激光发射头,再设计个简单的接受部分,应该差不多了。 、骗 子。 2010-08-22 02:44 - 相关内容 单片机上18b20温度传感器的工作原理是什么?09.07.26求st188传感器与单片机连接图10.08.08大家好,单片机 DS18B
18、20 温度传感器的温度转换怎么转换?10.01.17基于51单片机光电开光传感器c程序怎么编啊!10.08.23谁能给我一个用proteus仿真的基于单片机的温度传感器系统09.05.19 - 在线求助 沙漠雨-龙 等级:9采纳率:39.3% 中央空调在哪些方面发展趋势好,在 请问机械工程师主要是做什么的,分 精华知识 提高零件疲劳寿命的方法有哪些? 电梯的超载开关接线接哪 YJM15-15BC中的BC是什么意思 星球大战里的光剑可能吗? 路面要出哪些相关试验报告? 热门搜索 竹盐减肥春捂秋冻 尸毒 恙虫病维C银翘片 蜱虫 亮叔山楂树之恋 凡亚比 掌纹五星级公厕 邓亚萍 甩葱舞点亮图标 中秋节 更多热门专题 宇宙的奥秘 宇宙正在发生什么?天上的事情和地上的事是有联系的吗?有兴趣的话让 地球上出现的五种真正怪异动物星座的由来和传说VLC制造之讲述友情的电影世界绝美的硬币火影不可能事件