• 大小: 1.2MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-25
  • 语言: 其他
  • 标签: 温度  

资源简介

仿真,代码,PCB,参考论文等等.....................................................................

资源截图

代码片段和文件信息

#include 
#include 
#include 
#define uint unsigned int
#define uchar unsigned char
#define nops(); {_nop_();_nop_();_nop_();_nop_();}
uchar code  str1[]={“TEMP: “};

uchar TempBuffer[4];
sbit DQ = P3^5;        //温度传送数据IO口

sbit FMQ=P1^0;

uint wenduSet_wenduH=38Set_wenduL=10;

uchar flag=0; //显示状态位

sbit key1=P1^1;   //按键
sbit key2=P1^2;
sbit key3=P1^3;


   
/*************DS18B20温度读取模块*************/
void delay_1ms(uint z)
{
  uint xy;
  for(x=z;x>0;x--)
  for(y=110;y>0;y--);
}
void tmpDelay(int num)//延时函数
{
while(num--) ;
}

void Init_DS18B20()//初始化ds1820
{
unsigned char x=0;
DQ = 1;    //DQ复位
tmpDelay(8);  //稍做延时
DQ = 0;    //单片机将DQ拉低
tmpDelay(80); //精确延时 大于 480us
DQ = 1;    //拉高总线
tmpDelay(14);
x=DQ;      //稍做延时后 如果x=0则初始化成功 x=1则初始化失败
tmpDelay(20);
}

unsigned char ReadOneChar()//读一个字节
{
unsigned char i=0;
unsigned char dat = 0;
for (i=8;i>0;i--)
{
DQ = 0; // 给脉冲信号
dat>>=1;
DQ = 1; // 给脉冲信号
if(DQ)
dat|=0x80;
tmpDelay(4);
}
return(dat);
}

void WriteOneChar(unsigned char dat)//写一个字节
{
unsigned char i=0;
for (i=8; i>0; i--)
{
DQ = 0;
DQ = dat&0x01;
tmpDelay(5);
DQ = 1;
dat>>=1;
}
}
uchar  Readtemp()//读取温度
{
uchar temp = 0;
uchar tmp[2];
Init_DS18B20();
WriteOneChar(0xCC); // 跳过读序号列号的操作
        WriteOneChar(0x44); // 启动温度转换
delay_1ms(10);
Init_DS18B20();
WriteOneChar(0xCC); //跳过读序号列号的操作
    WriteOneChar(0xBE); //读取温度寄存器

tmp[0]=ReadOneChar();   //连续读两个字节数据   //读低8位
tmp[1]=ReadOneChar();                          //读高8位

temp = ((tmp[1]<<4)&0xF0)|((tmp[0]>>4)&0x0F); //正负数返回数值
if(temp>127) //判断temp
{
  temp = ~temp + 1;

}
return (temp);

}


//按键扫描程序 设置温度的上下限  0-99.9
void Key_Check()
{
if(!key1){
while(!key1);
flag++;
FMQ=1;
  if(flag==3)
  {
 flag=0;
 LCD_write_str(20“ “);
  }
  if(flag==1)
  {
  LCD_write_str(20“H“);
 
  }
 
  if(flag==2)
  {
  LCD_write_str(20“L“);
  }

   
 
  }

if(flag==1){
    
if(!key2){
//while(!key2);
delay(50);  //软件消除按键抖动
if(!key2){
// while(!key2);
Set_wenduH++;
if(Set_wenduH>99){ //超过上限就赋值0
Set_wenduH=0;
    
}

}
}
if(!key3){
delay(50); //软件消除按键抖动
if(!key3){
//   while(!key3);
Set_wenduH--;
if(Set_wenduH==0){ //低于下限就赋值900
Set_wenduH=99;
}

}
}

 
   Lcd_Display_2Date(15Set_wenduH);
   
}
if(flag==2){
    
if(!key2){
//while(!key2);
delay(50);  //软件消除按键抖动
if(!key2){
// while(!key2);
Set_wenduL++;
if(Set_wenduL>99){ //超过上限就赋值0
Set_wenduL=0;

}

}
}
if(!key3){
delay(50); //软件消除按键抖动
if(!key3){
  // while(!key3);
Set_wenduL--;
if(Set_wenduL==0){ //低于下限就赋值200
Set_wenduL=99;
}

}
}

   Lcd_Display_2Date(15Set_wenduL);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      36864  2013-05-15 10:19  基于STC89C52单片机温度系统控制资料\8550中文资料.doc

     文件      53760  2014-11-19 17:10  基于STC89C52单片机温度系统控制资料\DS18B20中文资料.doc

     文件     317953  2014-04-21 15:22  基于STC89C52单片机温度系统控制资料\lcd1602中文资料.doc

     文件      53760  2014-10-04 16:48  基于STC89C52单片机温度系统控制资料\STC89C52中文资料.doc

    ..A.SH.       162  2016-04-19 10:06  基于STC89C52单片机温度系统控制资料\~$理图PCB图.doc

     文件      28672  2015-05-18 09:24  基于STC89C52单片机温度系统控制资料\元件清单.doc

     文件        291  2016-04-21 19:19  基于STC89C52单片机温度系统控制资料\功能介绍.txt

     文件      51200  2016-04-21 19:36  基于STC89C52单片机温度系统控制资料\原理图PCB图.doc

     文件     920576  2014-12-31 16:21  基于STC89C52单片机温度系统控制资料\基于51单片机的智能温度报警控制系统参考论文.doc

     文件      14346  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20

     文件       3816  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.c

     文件       4064  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.hex

     文件         62  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.lnp

     文件      10865  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.LST

     文件      21624  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.M51

     文件      16105  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.OBJ

     文件       1497  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.plg

    .......     56561  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.uvopt

     文件      13407  2013-07-14 22:41  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.uvproj

    .......     56503  2016-04-20 17:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20_uvopt.bak

     文件          0  2013-07-14 20:30  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20_uvproj.bak

     文件       2333  2015-05-18 18:05  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\lcd1602.c

     文件       6376  2009-05-07 14:37  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\STARTUP.A51

     文件      14048  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\STARTUP.LST

     文件        749  2016-04-21 19:24  基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\STARTUP.OBJ

     文件     151647  2016-04-21 19:27  基于STC89C52单片机温度系统控制资料\温度系统控制仿真\Last Loaded moot.DBK

     文件     151647  2016-04-21 19:27  基于STC89C52单片机温度系统控制资料\温度系统控制仿真\moot.DSN

     文件       1054  2016-04-21 19:28  基于STC89C52单片机温度系统控制资料\温度系统控制仿真\moot.PWI

     文件      14803  2016-04-21 19:27  基于STC89C52单片机温度系统控制资料\温度系统控制仿真\温度系统控制lcd1602程序4.19\DS18B20

     文件       3706  2016-04-21 19:27  基于STC89C52单片机温度系统控制资料\温度系统控制仿真\温度系统控制lcd1602程序4.19\DS18B20.c

............此处省略49个文件信息

评论

共有 条评论