资源简介

本设计仿真了电炉丝的温度控制,采用51单片机控制继电器的开或者关控制电炉丝的加热,采用pt100温度传感器采集电炉丝的温度,系统可按键设置电炉丝的温度大小,通过温度传感器进行温度反馈后控制继电器的开和关的时间来控制电炉丝的温度,使电炉丝温度工作在设定的温度值,达到稳定控制效果,本设计仅供参考,请勿他用

资源截图

代码片段和文件信息

#include “DHT111.h“
#include 
#include 



sbit DATA = P1^1;
sbit SCK = P1^0;



/***********************************************************************************************************************************************************/

//SHT11程序


#define noACK 0 //继续传输数据,用于判断是否结束通讯
#define ACK   1             //结束数据传输;
//地址  命令  读/写
#define STATUS_REG_W 0x06   //000   0011    0
#define STATUS_REG_R 0x07   //000   0011    1
#define MEASURE_TEMP 0x03   //000   0001    1
#define MEASURE_HUMI 0x05   //000   0010    1
#define RESET        0x1e   //000   1111    0



//写字节程序
char s_write_byte(unsigned char value)   

unsigned char ierror=0; 
for (i=0x80;i>0;i/=2)             //shift bit for masking 高位为1,循环右移

if (i&value) DATA=1;          //和要发送的数相与,结果为发送的位
     else DATA=0;                        
     SCK=1;                          
     _nop_();_nop_();_nop_();        //延时3us 
     SCK=0;
}
DATA=1;                           //释放数据线
SCK=1;                            
error=DATA;                       //检查应答信号,确认通讯正常
_nop_();_nop_();_nop_();
SCK=0;        
DATA=1;
return error;                     //error=1 通讯错误
}

//读字节程序
char s_read_byte(unsigned char ack)
//----------------------------------------------------------------------------------

unsigned char ival=0;
DATA=1;                           //释放数据线
for(i=0x80;i>0;i>>=1)             //高位为1,循环右移

SCK=1;                         
     if(DATA) val=(val|i);        //读一位数据线的值 
     SCK=0;       
}
DATA=!ack;                        //如果是校验,读取完后结束通讯;
SCK=1;                            
_nop_();_nop_();_nop_();          //延时3us 
SCK=0;   
_nop_();_nop_();_nop_();       
DATA=1;                           //释放数据线
return val;
}

//启动传输
void s_transstart(void)
// generates a transmission start 
//       _____         ________
// DATA:      |_______|
//           ___     ___
// SCK : ___|   |___|   |______

    DATA=1; SCK=0;                   //准备
    _nop_();
   SCK=1;
    _nop_();
    DATA=0;
    _nop_();
   SCK=0; 
    _nop_();_nop_();_nop_();
    SCK=1;
    _nop_();
   DATA=1;     
   _nop_();
    SCK=0;     
}


//连接复位
void s_connectionreset(void)
// communication reset: DATA-line=1 and at least 9 SCK cycles followed by transstart
//       _____________________________________________________         ________
// DATA:                                                      |_______|
//          _    _    _    _    _    _    _    _    _        ___     ___
// SCK : __| |__| |__| |__| |__| |__| |__| |__| |__| |______|   |___|   |______

unsigned char i; 
DATA=1; SCK=0;                    //准备
for(i=0;i<9;i++)                  //DATA保持高,SCK时钟触发9次,发送启动传输,通迅即复位

SCK=1;
     SCK=0;
}
s_transstart();                   //启动传输
}


//软复位程序
char s_softreset(void)
// resets the sensor by a softreset 

unsigned char e

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-05-17 16:07  电炉丝控制\
     文件      128140  2017-05-17 14:16  电炉丝控制\Last Loaded pd.DBK
     文件      130642  2017-05-17 16:07  电炉丝控制\pd.DSN
     文件        1102  2017-05-17 16:07  电炉丝控制\pd.PWI
     目录           0  2017-05-17 14:17  电炉丝控制\project\
     文件        1187  2017-04-20 03:47  电炉丝控制\project\ADC0832.h
     文件        6629  2017-04-14 23:28  电炉丝控制\project\DHT111.c
     文件         280  2017-04-14 20:09  电炉丝控制\project\DHT111.h
     文件       10757  2017-04-20 05:05  电炉丝控制\project\DHT111.LST
     文件       10192  2017-04-20 05:05  电炉丝控制\project\DHT111.OBJ
     文件        9732  2017-04-14 20:54  电炉丝控制\project\DS18B20.c
     文件         218  2017-04-14 23:24  电炉丝控制\project\DS18B20.h
     文件       17240  2017-04-20 05:05  电炉丝控制\project\DS18B20.LST
     文件        5463  2017-04-20 05:05  电炉丝控制\project\DS18B20.OBJ
     文件       77758  2012-10-07 10:08  电炉丝控制\project\Last Loaded SHT11.DBK
     文件        4193  2017-05-17 14:07  电炉丝控制\project\lcd.c
     文件        1170  2017-05-17 13:40  电炉丝控制\project\lcd.h
     文件        7681  2017-05-17 14:07  电炉丝控制\project\lcd.LST
     文件        8124  2017-05-17 14:07  电炉丝控制\project\lcd.OBJ
     文件          42  2017-05-17 14:07  电炉丝控制\project\lcd.__i
     文件       77758  2012-10-07 11:09  电炉丝控制\project\SHT11.DSN
     文件         792  2012-10-07 15:57  电炉丝控制\project\SHT11.PWI
     文件       20042  2017-05-17 14:14  电炉丝控制\project\SHT11TEST
     文件        3118  2017-05-17 14:14  电炉丝控制\project\SHT11TEST.C
     文件       11848  2017-05-17 14:14  电炉丝控制\project\SHT11TEST.hex
     文件          62  2017-05-17 14:14  电炉丝控制\project\SHT11TEST.lnp
     文件        6120  2017-05-17 14:14  电炉丝控制\project\SHT11TEST.LST
     文件       18013  2017-05-17 14:14  电炉丝控制\project\SHT11TEST.M51
     文件       10901  2017-05-17 14:14  电炉丝控制\project\SHT11TEST.OBJ
     文件       17136  2017-05-17 14:14  电炉丝控制\project\SHT11TEST.plg
     文件       74365  2017-05-17 14:17  电炉丝控制\project\SHT11TEST.uvgui.lifu
............此处省略8个文件信息

评论

共有 条评论

相关资源