该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
先贴上DS18B20的驱动,这个我是照着书抄的,可以确定没抄错,因为是初学所以想先用现成的。
下面的程序是DS18B20.c里的代码,是用来驱动18B20的。我的工程包含多个文件。
#include
#define uchar unsigned char
#define uint unsigned int
sbit DQ = P1^0; //DS18B20的DQ脚
void Delay(int num)
{
for (;num>0;num--);
}
void Init_DS18B20(void) //初始化18B20
{
unsigned char x=0;
DQ = 1;
Delay(8);
DQ = 0;
Delay(80);
DQ = 1;
Delay(14);
x=DQ;
Delay(20);
}
/******************************************************************************/
unsigned char ReadOneChar(void) //从18B20读取一个字节
{
unsigned char i=0;
unsigned char dat = 0;
for (i=8;i>0;i--)
{
DQ = 0;
<