欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
at89c52+ds18b20溫度檢測
[打印本頁]
作者:
sghxj
時間:
2018-7-5 20:22
標題:
at89c52+ds18b20溫度檢測
仿真電路圖見附件
程序代碼如下:
//#include<1820.h>
#include<reg.51>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
//bit flag;
//#define wei 0xa0;
//#define duan 0x90;
uchar data disdata[5];
//uint tvalue;
uchar tflag;
sbit DQ=P3^7;
bit f=0;
uchar tempint,temppdp;
uchar TempTab[4];
uchar code discode[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xBF};
void delay()
{
uchar i,j;
for(i=0;i<5;i++)
for(j=0;j<250;j++)
{
_nop_();
_nop_():
}
}
void delay_18B20(uint i)
{
while(i--);
}
void ds1820rst()
{
unsigned char x=0;
DQ=1;
delay_18B20(4);
DQ=0;
delay_18B20(100);
DQ=1;
delay_18B20(40);
}
uchar ds1820rd()
{
unsigned char i=0;
unsigned char dat =0;
for(i=8;i>0;i++)
{
DQ=0;
dat>>=1;
DQ=1;
if(DQ)
dat|=0x80;
delay_18B20(10);
}
return(dat);
}
void ds1820wr(uchar wdata)
{
unsigned char i=0;
for(i=8;i>0;i--)
{
DQ=0;
DQ=wdata&0x01;
delay_18B20(10);
DQ=1;
wdata>>=1;
}
}
void read_temp()
{
uchar temph,templ,k;
f=0;
ds1820rst();
ds1820wr(0xcc);
ds1820wr(0x44);
ds1820rst();
ds1820wr(0xcc);
ds1820wr(0xbe);
templ=ds1820rd();
temph=ds1820rd();
if((temph&0xf8)!=0x00)
{
f=1;
temph=~temph;
templ=~templ;
k=templ+1;
templ=k;
if(k>255)
{
temph++;
}
}
tempdp=(templ&oxof)*10/16;
templ>>=4;
temph<<=4;
tempint=temph|templ;
}
void distemp()
{
uchar i,j;
if(f==0)
{
TempTab[0]=tempint/100;
TempTab[1]=(tempint/10)%10;
TempTab[2]=tempint%10;
TempTab[3]=tempdp;
}
else
{
TempTab[0]=10;
TempTab[1]=tempint/10;
TempTab[2]=tempint%10;
TempTab[3]=tempdp;
}
for(i=0;i<4;i++)
{
P2=_cror_(0xf7,i);
j=TempTab[i];
if(i==2)
P1=discode[j]&0x7f;
else
P1=discode[j];
delay();
P2=Oxff;
}
}
void main()
{
while(1)
{
_nop_();
_nop_();
read_temp();
_nop_();
_nop_();
distemp();
}
}
ds.png
(123.35 KB, 下載次數(shù): 30)
下載附件
2018-7-5 20:21 上傳
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1