55问答网
所有问题
DS18B20读程序和写程序有何不同?为何读程序或上0X80,写程序却与上0X01?
在DS18B20读一个字节和写一个字节中,是不是读一个字节要右移才能读,而写却可以直接写?
举报该问题
推荐答案 2011-01-14
DS18B20读程序和写程序有何不同?为何读程序或上0X80,写程序却与上0X01?
解析:
作用不同,写程序if (value & 0x01) ,判断写进来的一位是不1,
读程序value|=0x80,当读到的高电平时,则把相应的位置为1;先读到的低位一直向右移。所以只有右移才能在最后读到的连续8bit为一个字节,且高低位置没有变化。
从本质来讲其两个数字的作用不同,一个是用来判断高低电平的,一个是为了设计高低电平的。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://55.wendadaohang.com/zd/FIQI448F4.html
其他回答
第1个回答 2011-01-12
貌似你是用C,我只会汇编,读字节右移是为了把1个地址低位放到另一个地址高位获得1个新的字节,这个字节实际上就是测量的温度值,写貌似是直接写本回答被提问者采纳
第2个回答 2011-01-16
DS18B20是一位总线,一个字节八位需要一位一位读写,然后再把每位读写!
相似回答
DS18B20读程序和写程序有何不同?为何读程序或上0X80,写程序却与上0X01
...
答:
DS18B20
是一种数字温度传感器,通过1-Wire接口与主控器连接。在使用DS18B20传感器时
,读程序和写程序
的确
有不同
之处,而这些不同之处涉及到使用DS18B20的控制寄存器。DS18B20控制寄存器有一个8位的值,用于控制传感器的工作模式和其他设置。要进行
读程序,
需要设置控制寄存器的最高位(MSB)为1,以表示将进...
单片机
ds18b20程序
小问题
答:
因为,18B20,是一位、一位的,输出数据。先输出的,是最低位。读出时,把先读出的,放在最高位,即或上 1000 0000。然后右移一位。循环8次后,最先读出的,就成了最低位。
根据时序图
写程序,
总是写不明白。例如按照
ds18b20
的时序图写程序。思路...
答:
data=data|0x80 : 因为0x80二进制表示为10000000所以当data
或上0x80
就能将最高位1写入data。data=data&0x01:0x01二进制是00000001 当data
与上0x01
data就将data数据的最低位赋值给data 至于思路这个不会。
ds18b20
如何读取数据?
答:
1、首先双击电脑中的proteus软件,然后点击左侧的“P”按钮,如图。2、接着找到“关键字”输入框,如图。3、输入“
DS18B20
”,在列表中选择它,如图,最后点击“确定”。4、紧接着在图纸中点击左键,此时出现一个DS18B20的虚影,如图。5、拖动DS18B20虚影到图纸的合适位置,再次点击左键,如图,这样一...
写出
DS18b20
的读一
和写
一
程序,
用汇编语言
答:
dat|=
0x80
;delay_18B20(4); // 延时以完成此次读时 序,之后再读下一数据 } return(dat); //返回读取的dat } DQ = dat&
0x01
;这句语句是错误的。DQ为位变量,而dat为 unsigned char 如果真要这么写的话,应该是这样 :DQ = (bit)dat&0x01;把我写的给你做个参考吧:extern...
大家正在搜
程序和软件有何不同
中断服务程序与函数调用有何不同
程序和应用程序的区别
乘机与趁机有何不同
偏载和偏重有何不同
沿续和延续有何不同
应用和程序
程序和软件
软件和程序之间的关系
相关问题
懂单片机DS18B20程序的进
写出DS18b20的读一和写一程序,用汇编语言
我用DS18B20测温 写c程序 为什么总是不行呢?哪位高手...
谁能解释下DS18B20读和写一个字节子程序中各个部位是什么...
根据时序图写程序,总是写不明白。例如按照ds18b20的时序...
写DS18B20的控制程序的依据是什么,或者说为什么要这样写...
DS18b20问题 帮我看下代码 是什么问题 就是读不出数 ...
DS18B20各程序功能(急求!)