/*********************************************************************文件名:温度采集*描述:该文件实现了用温度传感器件DS18B20对温度的采集,并在数码管上显示出来。*创建人:东流,2009年4月10日*版本号:***********************************************************************/#include<>#defineucharunsignedchar#defineuintunsignedint#definejump_ROM0xCC#definestart0x44#defineread_EEROM0xBEsbitDQ=P2^3;//DS18B20数据口unsignedcharTMPH,TMPL;ucharcodetable[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};/*********************************************************************名称:delay()*功能:延时,延时时间大概为140US。*输入:无*输出:无***********************************************************************/voiddelay_1(){inti,j;for(i=0;i<=10;i++)for(j=0;j<=2;j++);}/*********************************************************************名称:delay()*功能:延时函数*输入:无*输出:无***********************************************************************/voiddelay(uintN){inti;for(i=0;i>i;temp=temp&0x01;write_bit(temp);delay(5);}}/*********************************************************************名称:Main()*功能:主函数*输入:无*输出:无***********************************************************************/voidmain(){floattt;uinttemp;P2=0x00;while(1){Reset();write_byte(jump_ROM);write_byte(start);Reset();write_byte(jump_ROM);write_byte(read_EEROM);TMPL=read_byte();TMPH=read_byte();temp=TMPL/16+TMPH*16;P0=table[temp/10%10];P2=6;Delay_1ms(5);P0=table[temp%10];P2=7;Delay_1ms(5);}}