欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  互联网

【毕设课设】基于51单片机智能大棚传感器检测控制系统设计

程序员文章站 2022-07-05 21:21:43
【资源下载】下载地址如下:https://docs.qq.com/doc/DTlRSd01BZXNpRUxl设一个温室大棚模型(用鞋盒子模拟),最上层铺上一层透明塑料保鲜膜。设计由51单片机电路、1602液晶显示电路、光照检测电路、土壤湿度检测电路组成。A/D模块PCF8591电路、1颗高亮LED灯补光电路、温度检测DS18B20电路、1颗黄色高亮LED灯加热电路、风扇电路、水泵灌溉电路、4位按键电路、1、通过光敏电阻检测光照强度,然后A/D模块PCF8591处理后,将光...

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

设一个温室大棚模型(用鞋盒子模拟),最上层铺上一层透明塑料保鲜膜。
设计由51单片机电路、
1602液晶显示电路、
光照检测电路、
土壤湿度检测电路组成。

A/D模块PCF8591电路、

1颗高亮LED灯补光电路、
温度检测DS18B20电路、
1颗黄色高亮LED灯加热电路、

风扇电路、
水泵灌溉电路、
4位按键电路、

1、通过光敏电阻检测光照强度,然后A/D模块PCF8591处理后,将光照强度值实时显示在液晶上,并且可以按键控制光照的强度值,
当光照低于设定的阈值,1颗白色高亮LED灯亮进行补光,光照高于设定的阈值,就不用管。
2、通过DS18B20检测温度值,并且实时显示在1602液晶上,并且可以通过按键设定温度值,当温度低于设定值时,通过一颗黄色高亮LED灯模拟。当温度超过设定值时,风扇旋转。
3、通过土壤湿度传感器检测土壤的湿度,并且将湿度值实时显示在液晶上,并且可以设定土壤的使读者,当土壤湿度小于设定的阈值,水泵加水。大于阈值时,不动作。

【毕设课设】基于51单片机智能大棚传感器检测控制系统设计

#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
#include<stdio.h>
#include "1602.h"
#include "delay.h"
#include "sysdefine.h"
#include"18b20.h"

sbit led_l = P1^0;
sbit led_b = P1^1;
sbit fan = P1^4;
sbit relay = P1^3;

sbit key_s = P3^4;
sbit key_a = P3^5;
sbit key_u = P3^6;

void Init_Timer0(void);

unsigned char readTem = FALSE ;//定义读时间标志
unsigned char readADCFlag = FALSE ;

int temp;
float temperature = 0;

char disdat[16];			   //打印数组初始化
char disset[16];
unsigned long time_20ms=0;		   //定时器计数

float Lv=0.0;		  	//光照采集电压
float Tv=0.0;				  //土壤采集电压
unsigned int Lval =0;		 //光照强度
unsigned int Rval = 0;		 //土壤湿度
unsigned int distem;
unsigned char rekey = 0;
unsigned char SetFlag = 0; 		//设置值
unsigned char setLval = 50;
unsigned char setRval = 50;
unsigned char setTval = 30;

void main (void)
{     
	unsigned char midval;             
	Init_Timer0();

	LCD_Init();           //初始化液晶
	DelayMs(20);          //延时有助于稳定
	LCD_Clear();          //清屏
	sprintf(disdat,"L:%2d R:%2d T:%2d C",Lval,Rval,distem);//打印电压电流值
	LCD_Write_String(0,0,disdat);//显示
	sprintf(disset," L:%2d R:%2d T:%2d",(unsigned int)setLval,(unsigned int)setRval,(unsigned int)setTval);//打印电压电流值
	LCD_Write_String(0,1,disset);
	while (1)         //主循环
	{
		

【毕设课设】基于51单片机智能大棚传感器检测控制系统设计

本文地址:https://blog.csdn.net/weixin_51254112/article/details/109562502