84-基于stm32单片机蔬菜大棚温湿度光照强度监测控制系统Proteus仿真+程序源码

本文主要是介绍84-基于stm32单片机蔬菜大棚温湿度光照强度监测控制系统Proteus仿真+程序源码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一:功能介绍:

1、采用stm32单片机+OLED显示屏+光照强度检测+DHT11温湿度+电机+按键+LED灯,制作一个温湿度采集、光照强度检测,OLED显示相关数据,

2、通过按键设置温度上限、湿度下限、光照强度下限值,

3、当采集温度大于设置温度,开启散热电机,当采集湿度小于设置湿度,开启加湿电机,当检测光照强度低于设置值,开启LED灯补光,

4、OLED显示屏显示采集温湿度、光照强度和设置的温湿度、光照强度阈值

二:仿真演示视频+程序简要讲解:(程序有中文注释,新手容易看懂)

84-基于stm32单片机蔬菜大棚温湿度光照强度监测控制系统Proteus仿真+程序源码+讲解视频

三:设计软件介绍

本设计使用C语言编程设计,程序代码采用keil5编写,程序有中文注释,新手容易看懂,仿真采用Proteus软件进行仿真演示视频使用的是Proteus8.9版本;资料包里有相关软件包,可自行下载安装。

四:程序打开方法

特别注意:下载资料包以后一定要先解压!(建议解压到桌面上,文件路径太深会导致程序打开异常),解压后再用keil5打开。

93dd7ab6599cae8bc064c65368ef13c1.png

d209febc734f701e4a17a783be50b5b6.png

程序部分展示,有中文注释,新手容易看懂b=ADC_GetConversionValue(ADC1);//读取光照强度tmp=(float)b*(3.4/4096)*33;//转换ADC数据计算光照强度DHT11_Read_Data(&temp, &hum);//温湿度读取sprintf((char *)buf, "temp:%d C  ", temp);//整数转字符串 温度LCD_P6x8Str(2, 1, buf);//字符显示sprintf((char *)buf, "hum:%d   " , hum);//整数转字符串   湿度LCD_P6x8Str(2, 3, buf);//字符显示sprintf((char *)buf, "GZ :%d Lux  ", tmp);//整数转字符串  光照强度LCD_P6x8Str(2, 5, buf);//字符显示if(KEY1==1) //设置温度上限值{  while(KEY1!=0);buf1++;if(buf1>100) buf1=1,LCD_Init();}if(KEY2==1) //设置湿度下限值{    while(KEY2!=0);buf2++;  if(buf2>100) buf2=1,LCD_Init();      }if(KEY3==1) //设置光照强度下限值{    while(KEY3!=0);buf3++;    if(buf3>100) buf3=1,LCD_Init();      }sprintf((char *)buf, "SET:%d", buf1);//整数转字符串 温度LCD_P6x8Str(80, 1, buf);//字符显示sprintf((char *)buf, "SET:%d" , buf2);//整数转字符串   湿度LCD_P6x8Str(80, 3, buf);//字符显示sprintf((char *)buf, "SET:%d", buf3);//整数转字符串  光照强度LCD_P6x8Str(80, 5, buf);//字符显示  if(temp>buf1)  MORTOR1=0;//温度过高  开启散热else MORTOR1=1;if(hum<buf2)  MORTOR2=0;//湿度过低  开启加湿else MORTOR2=1;if(tmp<buf3)  MORTOR3=0;//低于光照强度值 开灯补光else MORTOR3=1;

:仿真文件(采用Proteus打开)

22337bf246a8a8c19c6ce3d80c12a2ce.png

8ee7e1d041c39207228fa49597e26829.png

04d562bd7380bacac55ef297ec477758.png

六:资料清单展示(文件中包含的相关资料)

e4891a96608ae6e3e774ad06a3392b6a.png

百度云盘资料下载链接

这篇关于84-基于stm32单片机蔬菜大棚温湿度光照强度监测控制系统Proteus仿真+程序源码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/STM32_C51/article/details/132353556
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/370105

相关文章

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

8种快速易用的Python Matplotlib数据可视化方法汇总(附源码)

《8种快速易用的PythonMatplotlib数据可视化方法汇总(附源码)》你是否曾经面对一堆复杂的数据,却不知道如何让它们变得直观易懂?别慌,Python的Matplotlib库是你数据可视化的... 目录引言1. 折线图(Line Plot)——趋势分析2. 柱状图(Bar Chart)——对比分析3

无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案

《无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案》:本文主要介绍了无法启动此程序,详细内容请阅读本文,希望能对你有所帮助... 在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是"api-ms-win-core-path-l1-1-0.dll丢失

SpringBoot后端实现小程序微信登录功能实现

《SpringBoot后端实现小程序微信登录功能实现》微信小程序登录是开发者通过微信提供的身份验证机制,获取用户唯一标识(openid)和会话密钥(session_key)的过程,这篇文章给大家介绍S... 目录SpringBoot实现微信小程序登录简介SpringBoot后端实现微信登录SpringBoo

uniapp小程序中实现无缝衔接滚动效果代码示例

《uniapp小程序中实现无缝衔接滚动效果代码示例》:本文主要介绍uniapp小程序中实现无缝衔接滚动效果的相关资料,该方法可以实现滚动内容中字的不同的颜色更改,并且可以根据需要进行艺术化更改和自... 组件滚动通知只能实现简单的滚动效果,不能实现滚动内容中的字进行不同颜色的更改,下面实现一个无缝衔接的滚动