标题:
DS18B20精度设置 附单片机程序
[打印本页]
作者:
qq444244
时间:
2019-4-2 21:14
标题:
DS18B20精度设置 附单片机程序
通过网上资料收集,自己程序实验终于把温度精度设置成功!设置成功后温度是以0.5℃为单位跳变。
最关键的一点:设置精度在DS18B20复位之前完成,代码如下:
uchar Ds18b20Init()
{
uchar i;
Ds18b20WriteByte(0xcc); //跳过ROM操作命令
Ds18b20WriteByte(0x4e); //写暂存器指令4E
Ds18b20WriteByte(0x64); //写高速缓存器TH高温限值100度
Ds18b20WriteByte(0x00); //写高速缓存器TL低温限值0度
Ds18b20WriteByte(0x1f); //精度设置
DSPORT = 0; //将总线拉低480us~960us
复位信号
i = 70;
while(i--); //延时642us
DSPORT = 1; //然后拉高总线,如果DS18B20做出反应会将在15us~60us后总线拉低
应答信号
i = 0;
while(DSPORT) //等待DS18B20拉低总线
{
Delay1ms(1);
i++;
if(i>5)//等待>5MS
{
return 0;//初始化失败
}
}
return 1;//初始化成功
作者:
qq444244
时间:
2019-4-2 21:15
图片上传不了!
作者:
164652999
时间:
2019-6-6 22:05
多谢共享好经验
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1