⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 prj.c

📁 单片机控制如果其他会员下载一次您上载的源码
💻 C
字号:
#include "reg51.h"
typedef unsigned char uchar;
typedef unsigned int  uint;

sbit DQ=P0^0;
sbit  P0_1=P0^1;

uchar IC_reset(void)
{
 uchar presence,i;
 DQ=0;
 for(i=240;i>0;i--);    
 DQ=1;
 for(i=40;i>0;i--);   
 presence=DQ;
 for(i=200;i>0;i--);
 return(presence);
}

uchar  read_byte(void)
{
 uchar i,j;
 uchar value=0;
 for(i=8;i>0;i--)
 { value>>=1;
   DQ=0;
   for(j=2;j>0;j--);
   DQ=1;
   for(j=4;j>0;j--);
   if(DQ) value|=0x80;
   for(j=30;j>0;j--);
   DQ=1;
  }
return value;
}

void write_byte(char val)
{
 uchar i,j;
 for(i=8;i>0;i--)
 {   
  DQ=0;
  for(j=2;j>0;j--);
  DQ=val&0x01;
  for(j=30;j>0;j--);
  DQ=1;
  val>>=1;
 }
}

void IC_start(void)
{
 IC_reset();
 write_byte(0xcc);
 write_byte(0x44);
}

uchar read_temp(void)
{
 uchar data0,sign;
 IC_reset();
 write_byte(0xcc);
 write_byte(0xBE);
 data0=read_byte();
 sign=read_byte();
 if(sign)  data0=~data0+1;
  else     data0=data0;
 return data0  ;
   }


main()
{uchar data0,i; uchar shi=0,ge=0;
 uchar display[]={0xc0,0xf9,0xA4,0xB0,0x99,0x92,0x82,0xf8,0x80,0x98};
 /*IC_start();
 data0=read_temp();

 shi=data0/10;
 ge=data0%10;	*/


 while(1)
 {
 IC_start();
 data0=read_temp();
 if (data0 >=20)
 P0_1=0;
 else  P0_1=1;
 shi=data0/10;
 ge=data0%10;

 P1=0xef;
 P2=display[shi];
 for(i=100;i>0;i--);	


 P1=0xdf;
 P2=display[ge];
 for(i=100;i>0;i--);   

 P1=0xbf;
 P2=0x9c;
 for(i=100;i>0;i--);  

 P1=0x7f;
 P2=0xc6;
 for(i=100;i>0;i--);	 

 }

}				 


 
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -