┊ 网站导航 ┊ 管理登陆 ┊ 免责声明 ┊ 问题反馈 ┊ 友链说明┊本站部分内容来自网络共享资源,如有冒犯您的权利请来信告之删除或纠正! 不得对本站进行复制、盗链或镜像,转载内容须获得同意或授权;欢迎友情链接、站务合作! ![]() ![]() ![]() ![]() ![]() ![]() 本站学习交流群:138..158(高级群1-满)、77930286(高级群2)、61804809(群3) Copyright© MCUSY All Rights Reserved 本站网警备案号: WZ36040002485 ICP备案证书号:粤ICP备09034963号 |
读取DS18B20的数据时,先读高位再读低位;所以可以从上图看到,以TM2的DS18B20的数据为例,TM2的两个字节的数据由Read_buf_8ch数组的16个字节数据中的每个字节的bit2位组成。可知,完成一次数据读取的操作后,可以同时读回8个DS18B20器件的数据,在数据处理时,只需针对上图的数据结构对Read_buf_8ch数组的数据进行处理即可得到每个DS18B20器件的测温值。
2.3.3 API功能函数:
启动温度转换控制函数:
void DS18B20_Conver(void)
{
DS18B20_Reset();
DS18B20_WriteByte(0xcc);
DS18B20_WriteByte(0x44);
}
读取温度值函数:
void DS18B20_ReadTemp(void)
{
DS18B20_Reset();
DS18B20_WriteByte(0xcc);
DS18B20_WriteByte(0xbe);
DS18B20_Read2Byte();
}
调用读取温度值函数后,8个DS18B20器件的测温数据将保存在数组Read_buf_8ch的16个字节单元当中,还有待进行下一步的处理,方可得到对应每个DS18B20器件的测温值。下面介绍简单的处理代码片断:
char i,j;
unsigned int uiData[8];
unsigned char Mask;
//OS the resoult of Temperature
for(i=15;i>=0;i--)
{
Mask = 0x01;
for(j=0;j<8;j++)
{
}
}
┊ 网站导航 ┊ 管理登陆 ┊ 免责声明 ┊ 问题反馈 ┊ 友链说明┊本站部分内容来自网络共享资源,如有冒犯您的权利请来信告之删除或纠正! 不得对本站进行复制、盗链或镜像,转载内容须获得同意或授权;欢迎友情链接、站务合作! ![]() ![]() ![]() ![]() ![]() ![]() 本站学习交流群:138..158(高级群1-满)、77930286(高级群2)、61804809(群3) Copyright© MCUSY All Rights Reserved 本站网警备案号: WZ36040002485 ICP备案证书号:粤ICP备09034963号 |