阿滋猫波斯猫
这是我自己用DS18B20做的温度检测程序,复制给你看看,我这是通过串口可以在电脑上的串口助手上显示出实时的温度:#include<>#include<>#define uint unsigned int#define uchar unsigned charsbit ds=P1^0;bit flag;uchar count_t0;float f_temp;void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=122;y>0;y--);}void init() // 串口初始化{TMOD=0x21;SCON=0x50;TH0=0x4c;TL0=0x00;TH1=0xf3;TL1=0xf3;EA=1;ET0=1;TR0=1;TR1=1;}void timer0() interrupt 1{TH0=0x4c;TL0=0x00;if(++count_t0>=20){count_t0=0;flag=1;}}void dsreset(){uint i;ds=0;i=103;while(i>0)i--;ds=1;i=4;while(i>0)i--;}bit read_bit(){uint i;bit dat;ds=0;i++;ds=1;i++;i++;dat=ds;i=8;while(i>0)i--;return dat;}uchar read_byte(){uchar i,j,dat;dat=0;for(i=1;i<=8;i++){j=read_bit();dat=(j<<7)|(dat>>1);}return dat;}void write_byte(uchar dat){uint i;uchar j;bit testb;for(j=1;j<=8;j++){testb=dat&0x01;dat=dat>>1;if(testb){ds=0;i++;i++;ds=1;i=8;while(i>0)i--;}else{ds=0;i=8;while(i>0)i--;ds=1;i++;i++;}}}void begin_change(){dsreset();delay(1);write_byte(0xcc);write_byte(0x44);}float get_temp(){uchar a,b;uint temp;float f_temp;dsreset();delay(1);write_byte(0xcc);write_byte(0xbe);a=read_byte();b=read_byte();temp=b;temp<<=8;temp=temp|a;f_temp=temp*;temp=f_temp*10+;f_temp=f_temp+;return f_temp;}void main(){init();while(1){if(flag==1){flag=0;begin_change();TI=1;printf("The tempeature is %f\n",get_temp());while(!TI);TI=0;}}}
实创佳人
看来有一款芯片很符合上述要求 DS18B20 其端口全数字化,精度°,范围-127~127 并且各芯片只要一根数据线,同时根据芯片特性可以多芯片并联,通过穿行地址识别,这样多用几个IO口,没个IO口上再并几个温度传感器,就OK了,至于显示,那可以用最简单的数码管,一是显示当前传感器号,而来是现实传感器温度,如果用液晶显示器的话,可以多路同时显示...
甲醛是室内空气主要污染物之一。是一种无色的刺激性气体,沸点为19.5 ℃,易于挥发,常温下易溶于水。主要来源于各种人造板材,贴墙布、涂料等各种装饰材料以及吸烟等
这有一系列的毕业论文qq310852504
本科生有啥钱啊,楼上的,这点钱也想赚。。。既然是本科毕业设计,那还是老老实实自己做吧,也算对自己有个交代
Along with the humiture examination system's widespread utilization, the differe
很简单的问题,最好使用18B20来做;使用一个字节保存温度上限,一个字节保存下限。每次测量之后,将测温结果与这两数字做比较就行了。具体的控制量自己根据要求决定。