ds18b20如何判断matlab 正负 判断极

DS18B20如何使用?怎样得到输出的温度信号? - 电子元器件论坛 -
中国电子技术论坛 -
最好最受欢迎电子论坛!
后使用快捷导航没有帐号?
Hot [精品]
DS18B20如何使用?怎样得到输出的温度信号?
10:40:18  
& && & DS18B20的DQ引脚是说一接上,供电,DQ引脚就会输出温度信号吗?还是说我要在上位机上写一段初始化,然后.......,才会输出温度信号?
助理工程师
11:23:56  
额,首先,不论什么IC你都需要先初始化,而且最终的到数据也是需要进行解读,才可以成为最终显示出来的温度。不要幻想一接上就有标准的温度数据
15:53:50  
PCB在线计价下单
板子大小:
板子数量:
PCB 在线计价
学习了,有图就更好了。
15:54:01  
学习了,有图就更好了。
16:29:03  
需要看datasheet,来解析输出的数据,然后还原温度
助理工程师
16:48:39  
一定不要忽略datasheet,datasheet是一切问题的最好的最全面的解决之道。。。。。
09:50:26  
输出温度,模拟量,需要AD转换
DS18B20就是输出数字量的数字式温度传感器
09:51:50  
额,首先,不论什么IC你都需要先初始化,而且最终的到数据也是需要进行解读,才可以成为最终显示出来的温度。不要幻想一接上就有标准的温度数据
意思是说要把DS18B20接一块单片机处理是吗?
15:34:13  
额,首先,不论什么IC你都需要先初始化,而且最终的到数据也是需要进行解读,才可以成为最终显示出来的温度。不要幻想一接上就有标准的温度数据
可是我用AccessPort调试助手看他的输入输出缓冲区都没有数据啊
助理工程师
17:11:25  
可是我用AccessPort调试助手看他的输入输出缓冲区都没有数据啊
这个电路问题?好好测下电路先
16:32:38  
这个电路问题?好好测下电路先
DS18B20是必须连接一个单片机才能够读取温度数据吗?
助理工程师
20:39:58  
DS18B20是必须连接一个单片机才能够读取温度数据吗?
你看一下18B20的数据输出呗
等待验证会员
17:39:44  
一般18B20都是结合单片机 或者其他MCU来一起工作的才能读出温度的。18B20要按照一定的时序才能读出18B20里面寄存器的数值,然后转换成温度值的。
19:47:14  
我是结合单片机的,建议你去网上找一下ds18b20的数据手册看看,数据手册比较对功能的描述比较详细。
等待验证会员
15:50:35  
本帖最后由 而我还不够 于
15:51 编辑
18B20不用再做复杂的数据转换,按照一定时序读出来就是了,就是需要芯片来读出的
工程师职场
Powered by
供应链服务
商务及广告合作
Jeffery Guo
关注我们的微信
供应链服务 PCB/IC/PCBA
版权所有 (C) 深圳华强聚丰电子科技有限公司DS18B20的连接介绍_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
DS18B20的连接介绍
阅读已结束,下载文档到电脑
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩4页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢DS18B20测正负温度的ICC程序并1602显示_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
DS18B20测正负温度的ICC程序并1602显示
&&正负温度的测量与显示
阅读已结束,下载文档到电脑
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢DS18B20 数据处理支持负温度
& & 单片机 测温芯片 18B20 是一款常用的IC,优势特点不多说,这里主要讨论温度值的处理,尤其是负温度。18B20片内有一个9Byte的 SRAM 和一个3Byte的 EEPROM。如下图:其中我们需要使用的就是SRAM中的前两个字节,这里储存的就是我们要的温度值。这两个字节的结构如下:& & 我们可以看到,LS(低字节)的高四位 和 MS(高字节)的低四位共8个字节构成了实际的一个带符号位的字节数据可以表示(-128~127)足够表示18B20的温度范围。MS的高四位为符号为的扩展,当温度值为正时MS高5位(图中S的五位)全为0,温度值为负时全为1。LS的低四位为小数部分,不是要求太高的话可以忽略。我们这里暂不套路小数部分的处理方法。下面我们就来讨论整数部分的数据处理方法。& & 整数部分我们实际只要高字节的第四位和低字节的高四位。首先通过移位求或后生成一个无符号位的字节。然后判断这个无符号的值是否大于127,如果大于128说明是个负温度需要处理,否则就可以直接返回。18B20的负温度使用补码形式输出,我们只需要对这个字节进行取反加1后就是这个负温度的绝对值,这时候我们需要一个符号标记告诉输出函数这是个负温度需要显示负号即可。下面贴出数据处理部分的代码:& &&uchar readtemp() //读取温度{& uchar temp = 0;& uchar tmp[2]& reset();& writebyte(0xCC); // 跳过序列号& writebyte(0x44); // 启动温度转换& delayms(1000);& reset();& writebyte(0xCC);& writebyte(0xBE); //读9个寄存器,前两个为温度& tmp[0]=readbyte(); & //低位& tmp[1]=readbyte(); & //高位&&& temp = ((tmp[1]&&4)&0xF0)|((tmp[0]&&4)&0x0F);& if(temp&127)& { temp = ~temp + 1;& }&&& return (temp);}小数部分稍后讨论。
&&最后修改于
请各位遵纪守法并注意语言文明

我要回帖

更多关于 matlab 正负 判断 的文章

 

随机推荐