基于单片机温湿度采集系统毕业设计-毕设课设资料

【资源下载】下载地址如下1528:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

摘  要

温度和湿度是两个最基本的环境参数,与人们的生活息息相关。在工农业生产、气象、环保、国防、科研等部门,经常需要对环境温度和湿度进行测量和控制。准确测量温湿度在生物制药、食品加工、造纸等行业更是至关重要。因此研究温湿度的测量和控制方法具有重要的意义。

本设计实现的是单片机温湿度测量和控制系统,通过LCD显示所测量的温湿度。系统采用集温湿度传感器与A/D转换器于一体的SHT11芯片,通过单片机进行处理显示,其它模块包括了实时时钟/日期产生电路和超限报警处理电路,对测量的值进行实时显示和报警处理。文章介绍了基于ATMEL公司的AT89C51系列单片机的温湿度实时测量与控制系统和显示系统的设计,包括介绍了硬件结构原理,并分析了相应的软件的设计及其要点,包括软件设计流程及其程序的实现。系统结构简单、实用,提高了测量精度和效率。

关键词:AT89C51、SHT11、LCD、DS1302、温湿度控制

#include<reg51.h>
#include<absacc.h> 
#include<intrins.h> 
#include<math.h> 
#include<12864.h> 
#include<LCD1604.h> 
#include<DS1302.h> 
#include<SHT11.h> 
#include<set_key.h> 
void Delay1ms(unsigned int count)    //延时函数 
{  
unsigned int i,j; 
 for(i=0;i<count;i++) 
 for(j=0;j<120;j++); 
} 
main() 
{  
SYSTEMTIME CurrentTime;  //定义时间日期结构体 
 SHT_dat aa;         //定义温湿度测量处理结构体 
 Init_12864();     //12864的显示*/ 
 Initial_DS1302();   //DS1302初始化*/ 
 LCD_Initial();     //LCD初始化 
 GotoXY(0,0);          //LCD显示函数 
 Print("Date:"); 
 GotoXY(16,0);
 Print("Temper:");
 GotoXY(0,1); 
 Print("Time:"); 
 GotoXY(16,1); 
 Print("Humidi:"); 

while(1) 
 {  
convert_SHT(&aa,TEMP);     //温度转换 
  convert_SHT(&aa,HUMI);     //湿度转换 
  caculation_SHT(&aa);       //温度和湿度的补偿 
  float_convert(&aa);        //将浮点数转换成整型,各个位的数分别保存
  doing_temp(&aa);     //检测温度是否超限 
  doing_humi(&aa);     //检测湿度是否超限 
  DS1302_GetTime(&CurrentTime); 
  DateToStr(&CurrentTime); 
  TimeToStr(&CurrentTime); 
  GotoXY(5,0);      //第一行显示日期 
  Print(CurrentTime.DateString); 
  GotoXY(23,0);      //第三行显示温度 
  Print(aa.num_temp); 
  GotoXY(28,0);
  Print("     ");  
 // Print(" C   "); 
  GotoXY(5,1);      //第二行显示时间
  Print(CurrentTime.TimeString); 
  GotoXY(23,1);       //第四行显示湿度 
  Print(aa.num_humi);
 GotoXY(28,1); 
   Print("     "); 
  //Print(" %   "); 
  Delay1ms(300);     //延时 

posted @ 2021-03-29 12:34  roadroad  阅读(238)  评论(0编辑  收藏  举报
电设屋
上千套电子毕设课设方案