DS18B20温度传感器实现实时温度测量

来源:百度知道 编辑:UC知道 时间:2024/09/21 08:27:09
单机片机用AT89S52
显示用四个共阳极的数码显示管
晶振12MHz
温度精确到0.5度

/********************************************************
* DS18B20温度传感器 *
* C51 *
* yajou 2008-06-28 无CRC *
********************************************************/

#include "reg51.h"
#include "intrins.h"
#include "DS18B20.h"

/********************************************************
* us延时程序 *
********************************************************/
void Delayus(uchar us)
{
while(us--); //12M,一次6us,加进入退出14us(8M晶振,一次9us)
}

/********************************************************
* DS18B20初始化 *
********************************************************/
bit Ds18b20_Init(void) //存在返0,否则返1
{
bit temp = 1;
uchar outtime = ReD