用DS18B20构成测温系统
(65536-4000)/256;
TL0=(65536-4000)%256;
if(displaycount==2)
{
P0=displaycode[displaybuf[displaycount]] | 0x80;
}
else
{
P0=displaycode[displaybuf[displaycount]];
}
P2=displaybit[displaycount];
displaycount++;
if(displaycount==8)
{
displaycount=0;
}
timecount++;
if(timecount==150)
{
timecount=0;
while(resetpulse());
writecommandtods18b20(0xcc);
writecommandtods18b20(0xbe);
readdata[0]=readdatafromds18b20();
readdata[1]=readdatafromds18b20();
for(x=0;x8;x++)
{
displaybuf[x]=16;
}
sflag=0;
if((readdata[1] 0xf8)!=0x00)
{
sflag=1;
readdata[1]=~readdata[1];
readdata[0]=~readdata[0];
result=readdata[0]+1;
readdata[0]=result;
if(result>255)
{
readdata[1]++;
}
}
readdata[1]=readdata[1]4;
readdata[1]=readdata[1] 0x70;
x=readdata[0];
x=x>>4;
x=x 0x0f;
readdata[1]=readdata[1] | x;
x=2;
result=readdata[1];
while(result/10)
{
displaybuf[x]=result%10;
result=result/10;
x++;
}
displaybuf[x]=result;
if(sflag==1)
{
displaybuf[x+1]=17;
}
x=readdata[0] 0x0f;
x=x1;
displaybuf[0]=(dotcode[x])%10;
displaybuf[1]=(dotcode[x])/10;
while(resetpulse());
writecommandtods18b20(0xcc);
writecommandtods18b20(0x44);
}
}
- 基于DSP的数字温度传感器控制系统(11-28)
- 基于DS18B20数字温度传感器的设计与实现(09-23)
- 基于AT89S52单片机的温度监测系统的设计(01-10)
- ARM9和Linux的DS18B20驱动程序研究(01-16)
- DS18B20测温显示程序(12-03)
- DS18B20-64位序列码读取程序(12-02)