锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

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

时间:2022-12-03 15:30:00 保鲜传感器

设置温室模型(鞋盒模拟),上层铺设透明塑料保鲜膜。

51单片机电路设计,

液晶显示电路1602,

光检测电路,

土壤湿度检测电路的组成。

A/D模块PCF8591电路、

1颗高亮LED照明补光电路,

温度检测DS18B20电路、

1颗黄色高亮LED灯加热电路,

风扇电路、

水泵灌溉电路,

四位按键电路,

1.通过光敏电阻检测光强,然后A/D模块PCF8591处理后,将光强值实时显示在液晶上,并按键控制光强值,

当光线低于设定阈值时,一个白色明亮LED如果光线高于设定阈值,则无需管理。

2、通过DS18B20检测温度值,实时显示在1602液晶上,温度值可以通过按钮设。当温度低于设定值时,它是黄色的LED灯模拟。当温度超过设定值时,风扇旋转。

3、通过土壤湿度传感器检测土壤湿度,并在液晶上实时显示湿度值,当土壤湿度小于设定阈值时,可设置土壤读者。当阈值大于阈值时,不要移动。

7d02041151998fb04b1ae432a134071f.png

#include //包含头文件,一般不需要更改。头文件包含特殊功能寄存器的定义

#include

#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:- R:- T:- C",Lval,Rval,distem);//打印电压电流值

LCD_Write_String(0,0,disdat);//显示

sprintf(disset," L:- R:- T:-",(unsigned int)setLval,(unsigned int)setRval,(unsigned int)setTval);//打印电压电流值

LCD_Write_String(0,1,disset);

while (1) //主循环

{

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章