✨哈喽大家好,这里是@每天一杯冰美式oh,985电子本硕,大厂嵌入式在职0.3年,业余时间做做单片机小项目,有需要也可以提供就业指导(免费)~
🐱🐉这是51单片机毕业设计100篇系列的第14篇:基于51单片机的智能浇花系统
💻项目相关说明:
- 代码量:665行
- 报告字数:5613字
- 含代码、仿真、原理图、报告、器件清单、常见问题(实物、lw可另外定制)
🎈项目分享:见文末!
1、主要功能
该系统由AT89C51/STC89C52单片机+LCD1602显示模块+DHT11温湿度模块+DS1302时间模块+继电器驱动水泵模块+光敏传感器等模块构成。适用于智能浇花、自动浇花、智能盆栽等相似项目。
可实现功能:
1、LCD1602实时显示北京时间、土壤温湿度、光照强度等信息
2、DHT11采集温湿度数据
3、DS1302采集时间数据
4、光敏传感器(电位器模拟)采集光照强度信息
5、湿度过低时声光报警,对应继电器闭合,水泵自动加水
6、温度过低/过高或光照强度过高,声光报警
7、按键设置温湿度和光照强度阈值
2、仿真
proteus仿真使用8.10版本,由于该软件版本迭代原因,不能确保其他版本软件能够正常运行,请安装好对应软件(版本一致或者高于这个版本都可以)
3、代码
部分代码,仅供参考,注释齐全。
//-----------------------------------------------------------------
// 头文件包含
//-----------------------------------------------------------------
#include <reg51.h>
#include <intrins.h>
//-----------------------------------------------------------------
// 数据类型宏定义
//-----------------------------------------------------------------
#define uchar unsigned char
#define uint unsigned int
//-----------------------------------------------------------------
// 定义LCD使用的IO口
//-----------------------------------------------------------------
sbit ep=P2^0; //使能信号端口
sbit rw=P2^1; //读写选择端口
sbit rs=P2^2; //寄存器选择端口
//-----------------------------------------------------------------
// 定义按键、LED、蜂鸣器等使用的IO口
//-----------------------------------------------------------------
sbit KEY1=P1^0; //设置阈值按键设置
sbit KEY2=P1^1; //增加按键设置
sbit KEY3=P1^2; //减少按键设置
sbit LED1=P1^3; //温度异常设置
sbit LED2=P1^4; //湿度异常设置
sbit LED3=P1^5; //光照异常设置
sbit BUZZER=P2^3; //蜂鸣器设置
//-----------------------------------------------------------------
// 定义湿度传感器DHT11数据IO口
//-----------------------------------------------------------------
sbit Data=P2^4; //温湿度IO
signed char humi_value;//湿度
signed char temp_value;//温度
//-----------------------------------------------------------------
// 定义ADC0832数据口
//-----------------------------------------------------------------
sbit cs = P3^2;//片选使能,低电平有效
sbit clk = P3^3;//芯片时钟输入
sbit dio = P3^4;//数据输入DI与输出DO
uint sunshine;//光照强度
//-----------------------------------------------------------------
// 定义继电器控制数据IO口
//-----------------------------------------------------------------
sbit ADD_Water = P1^6; //控制加水继电器的IO口
4、原理图
使用AD21绘制(不是嘉立创哦
5、参考报告
内含3.7k字,17页相关报告一份,纯手打~
6、常见问题
7、资源获取
扫描如下二维码,回复"51智能浇花系统"获取本项目所有文件!
希望可以对你有所帮助~