芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

DS18B20 51单片机冰箱测温程序IC解密

IC解密冰箱测温程序,经测试,可以用

#include <reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char

//小板接线
// sbit lcdrs=P2^4;    //液晶接口
// sbit rw=P2^5;            //液晶接口
// sbit lcden=P2^6;  //液晶接口
sbit quanwe=P2^0;
sbit baiwe=P2^1;
sbit shiwe=P2^2;
sbit gewe=P2^3;

sbit Beep=P3^0;
sbit DS=P3^2;               //温度传感器接口

sbit K1=P3^6;      //16脚
sbit K2=P3^7;           //17脚
sbit K3=P3^4;    //14脚
sbit K4=P3^5;   //15脚


uchar K1num;
uchar code smgdu[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
bit flag;
uchar Thflag=1;
uchar con;
uchar Th;
uint temp;

//延迟函数
void delayus(uint t)  // 延迟10微秒函数
{
  while(t--);
}

void delayms(uint z)         //延迟1毫秒函数
{
  uint x,y;
        for(x=z;x>0;x--)
          for(y=110;y>0;y--);
}         

//DS18B20温度函数
void DSreset(void)   //复位
{
  DS=1;                           //总线高电平
  delayus(6);     //延迟66us
  DS=0;                         //拉低总线
  delayus(65);  //保持480-960us
  DS=1;        //释放总线
  delayus(14);        
  if(DS==0)         //检测到从件发出应答信号       
    flag=1;
  else
    flag=0;         //未检测到从件发出应答信号
  delayus(20);                 
}                  

bit DSread_bit( )        //读位函数,主机把总线由高拉低1微秒,释放,15微秒内检测并读取总线电平。
{
   bit Dat;
   DS=0;           //拉低总线
   _nop_( );  //延1微秒
   _nop_( );
   DS=1;         //释放总线
   _nop_( );
   Dat=DS;        //读取总线电平
   delayus(10);
   return Dat;         //返出读取值
}

uchar DSreadByte( )           //读取8位并组装1字节函数
{
    uchar i, j,k;
        k=0;               //K赋初值0
    for(i=0; i<8; i++)
    {
        j=DSread_bit( );
        k=(j<<7)|(k>>1);        //j左移7位与上k,8次后组成1字节
    }
    return k;
}               

void DSwrite_byte(uchar dat)   //写1字节函数
{
  uchar i;
  for(i=1;i<=8;i++)
  {
    DS=0;                 //拉低总线
        _nop_( );          //延1微秒
    DS=dat&0x01;  //总线电平等于需写入dat的未位,写1则DS=1,写0则DS=0
        delayus(6);
        DS=1;        //释放总线,准备写入dat的未第2位。
    dat=dat>>1;         //dat右移,未2位移至未位。
   }
   delayus(6);
}         


联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信