ds18b20的两字节如何存温度值的
答案:1 悬赏:30
解决时间 2021-01-27 19:49
- 提问者网友:贪了杯
- 2021-01-27 06:43
ds18b20的两字节如何存温度值的
最佳答案
- 二级知识专家网友:梦中风几里
- 2021-01-27 07:49
而在本文的范例程序当中,仅仅为了提取DS18B20器件的转换完后的温度值,所以在读取DS18B20的数据时,仅读取存放在数据地址前两个字节的温度数据,而不读取其它字节的数据,包括CRC校验值也没有进行读取,供参考。写字节操作函数:voidDS18B20_WriteByte(unsignedcharCom){unsignedchari;for(i=0;i<8;i++){if(Com&0x01)DS18B20_Write_1();elseDS18B20_Write_0();Com=Com1;}}调用DS18B20_WriteByte函数,连在8个I/O口上的一线制总线上的8个DS18B20器件,将都会接收到同样的一个字节的数据:Com。读数据操作函数:unsignedcharRead_buf_8ch[16];//bufferofReadDS18B20voidDS18B20_Read2Byte(void){unsignedinti;for(i=0;i<16;i++){Read_buf_8ch=DS18B20_ReadDQ();}}前面已经介绍过了,在本范例中,只读取位到DS18B20内部数据区域的前两节字的温度值数据,所以数据读取函数设计成读取两个字节的函数,即需要连续读取16个位(对应于每一个DS18B20器件来说是连续的16个位)。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯