目 录
摘 要 I
ABSTRACT I
1 绪论 1
1.1 课题背景和意义 1
1.1.1选题背景 1
1.1.2研究意义 1
1.2 国内外发展现状及趋势 2
1.3研究主要内容 3
2 总体设计方案 5
2.1 浇灌系统设计的需求 5
2.2 总体设计方案选定 5
3 系统硬件设计 6
3.1 LCD1602显示接口线路 6
3.2 ADC0832简介 6
3.3 湿度传感器介绍 7
3.4 报警器模块 7
3.5 按键模块 8
4 软件设计 9
4.1 主程序模块 9
4.2 湿度传感器模块 9
4.3 显示模块 10
4.4 报警器模块 11
5 系统测试 13
5.1 硬件调试 13
5.2 硬件测试问题 13
5.3 软件调试 13
5.4 系统的测试 14
6 结论 15
参考文献 16
致 谢 18
附 录 19
附件1 实物图 19
附件2 原理图 20
附件3 PCB图 21
附件4 源代码 22
1.硬件模块包括按键参数设置模块、温湿度采集模块、液晶显示模块、继电控制模块以及报警模块。单片机通过采集 DHT11 温湿度传感器信息,完成室内环境信息的采集与处理,同时土壤湿度传感器采集的信息经过 AD 转换后传人单片机,并经过单片机分析处理后通过 LCD1602 进行显示。参数设置模块能够完成系统参数的设置,通过按键输入实现土壤湿度值上下限设置,单片机能够根据相应参数设置以及土壤湿度信息,及时控制继电装置工作,从而有效控制相关执行机构。
2.系统软件程序设计主要实现对环境温湿度信息以及土壤 湿度信息的采集与处理,并通过 LCD1602 进行显示,同时通 过控制单片机的相应引脚状态实现对继电器的控制以及声光报警的功能。软件程序设计主要包括系统主程序,液晶显示子程序,土壤湿度检测子程序等。
2 总体设计方案
2.1 浇灌系统设计的需求
此次设计是为了方便人们在繁忙的时候也能对盆栽、花圃进行浇灌,要求土壤的湿度、温度以数值的形式显示在LED屏上。具备报警功能,在检测到需要浇水的时候能报警提醒,并把该时刻的温度、湿度显示在LED屏上。需要浇灌的条件可以由人自己修改确定,通过按键调试,达到用户的浇灌需求。能达到抽水浇灌的功能,在湿度传感器(yl-69)检测到湿度,报警系统提醒以后,能抽水浇灌。 本文转载自http://www.biyezuopin.vip/onews.asp?id=13982按键能够调节浇灌的湿度、温度额定值,并且显示在LED屏上。
2.2 总体设计方案选定
本次设计采用的是STC89C51单片机,利用单片机编程灵活的特性实现了设计要达到的喷灌功能。在单片机的外围电路外接输入键盘用于设定喷灌的湿度值、温度值和一些功能的控制,外接LCD1602显示器用于显示湿度和温度。其原理如下图2-2所示。

图2-2 单片机控制原理图

#include <reg52.h>
#define uchar unsigned char  //无符号字符型 宏定义   变量范围0~255
#define uint  unsigned int   //无符号整型 宏定义    变量范围0~65535#include <intrins.h>sbit SCL=P1^4;     //SCL定义为P1口的第3位脚,连接ADC0832SCL脚
sbit DO=P1^5;       //DO定义为P1口的第4位脚,连接ADC0832DO脚
sbit CS=P1^3;       //CS定义为P1口的第4位脚,连接ADC0832CS脚sbit beep = P3^3;   //蜂鸣器IO口定义
uint temperature,s_temp ;  //温度的变量
uchar shidu;     //湿度等级
uchar s_high = 70,s_low = 25;   //湿度报警参数sbit dianji = P1^6;     //电机IO定义bit flag_300ms ;
uchar key_can;        //按键值的变量
uchar menu_1;        //菜单设计的变量#define RdCommand 0x01 //定义ISP的操作命令
#define PrgCommand 0x02
#define EraseCommand 0x03
#define Error 1
#define Ok 0
#define WaitTime 0x01 //定义CPU的等待时间
sfr ISP_DATA=0xe2;  //寄存器申明
sfr ISP_ADDRH=0xe3;
sfr ISP_ADDRL=0xe4;
sfr ISP_CMD=0xe5;
sfr ISP_TRIG=0xe6;
sfr ISP_CONTR=0xe7;
uchar a_a;//这三个引脚参考资料
sbit rs=P1^0;    //1602数据/命令选择引脚 H:数据       L:命令
sbit rw=P1^1;    //1602读写引脚          H:数据寄存器    L:指令寄存器
sbit e =P1^2;    //1602使能引脚          下降沿触发
uchar code table_num[]="0123456789abcdefg";/********************************************************************
* 名称 : delay_uint()
* 功能 : 小延时。
* 输入 : 无
* 输出 : 无
***********************************************************************/
void delay_uint(uint q)
{while(q--);
}/********************************************************************
* 名称 : write_com(uchar com)
* 功能 : 1602命令函数
* 输入 : 输入的命令值
* 输出 : 无
***********************************************************************/
void write_com(uchar com)
{e=0;rs=0;rw=0;P0=com;delay_uint(3);e=1;delay_uint(25);e=0;
}













基于AT89C51单片机的智能浇花系统设计相关推荐

  1. 基于51单片机的自动浇花系统设计/基于51单片机的智能抽奖系统控制设计/基于51单片机的数字时钟与日历显示控制设计 毕业设计

    1147基于51单片机的自动浇花系统设计 设计思路:通湿度传感器实时监测湿度,通过LCD显示出实时的湿度采集值,可以通过按键设定目标界限,当达到这个界限值时,浇花系统的电机装置运行. 电路包含:LCD ...

  2. 基于51单片机的智能浇花系统(可做毕设)

    基于51单片机的智能浇花系统(可做毕设) 一.系统介绍 二.仿真展示 三.实物展示 四.仿真过程 五.代码 1.ADC0832 2.LCD1602 3.按键 4.水泵 5.温湿度 6.定时器 7.ma ...

  3. c语言数字植物管理系统,基于AT89C52单片机的智能浇花系统(包含程序代码)

    内容简介: 基于AT89C52单片机的智能浇花系统,毕业论文,共50页,18022字,附程序代码.实物图等. 摘要 伴随着经济的快速发展,人们的物质生活水平得到了极大的提高,生活质量越来越为人们关注. ...

  4. arduino智能浇花系统_基于Arduino单片机的智能浇花器

    Internal Combustion Engine & Parts • 119 • 基于Arduino单片机的智能淺花器 卞 云 松 ;张 国 祥 ;任 佳 豪 :陆晨雨 (江海职业技术学院 ...

  5. 【51单片机】基于51单片机的智能浇花系统的设计与实现

    技术:C语言.单片机等 摘要: 本设计是基于51系列单片机而设计的智能浇花系统,本系统结合单片机编程技术.传感器技术以及GSM通信技术实现系统基本功能,使系统根据不一样的土壤湿度,能够相应的改变浇水要 ...

  6. 基于51单片机的自动浇花系统设计

    引言 1 选题的目的和意义 随着社会的进步,人们的生活质量越来越高.在家里养养盆花可以陶冶情操,丰富生活.同时盆花可以通过光合作用吸收二氧化碳,净化室内空气,在有花木的地方空气中阴离子聚集较多,所以空 ...

  7. 基于单片机自动智能浇花系统电路设计(毕业设计资料)

    摘要: 1.基于51单片机自动智能浇花系统设计 本设计由STC89C52单片机电路+4位共阳数码管显示电路+ADC0832采样电路+水泵控制电路+土壤湿度传感器电路+按键电路+电源电路组成. 1.数码 ...

  8. arduino智能浇花系统_基于Arduino的远程自动浇花系统设计

    基于 Arduino 的远程自动浇花系统设计 陈培东 ; 姚玉环 ; 李祖鹏 ; 周艺轩 [期刊名称] <电子世界> [年 ( 卷 ), 期] 2017(000)006 [摘要] 设计了一 ...

  9. 基于51单片机的自动浇花系统

    目录 一.项目需求 二.仿真 三.程序 四.资料清单 资料下载地址:基于51单片机的自动浇花系统 一.项目需求 1.自动检测土壤湿度.温度.光照强度: 2.土壤湿度过低驱动水泵进行浇花: 3.LCD1 ...

最新文章

  1. python【力扣LeetCode算法题库】69-x 的平方根
  2. 几种P2P流媒体开源项目介绍
  3. 二分查找找下标或者值
  4. Android UI ActionBar功能-ActionBarProvider的使用
  5. ios14系统 GIF图展示异常问题
  6. VirtualBox中使用双网卡实现CentOS既能上网(校园网)也能使用SSHclient
  7. Mr.J-- HTTP学习笔记(七)-- 缓存
  8. 图像检索从入门到进阶
  9. js如何获取window.location.href跳转后查询字符串的值?
  10. 【VR】Leap Motion 官网文档 FingerModel (手指模型)
  11. 【VRP】基于matlab遗传算法求解出租车网约车接送客车辆路径规划问题【含Matlab源码 YC003期】
  12. Python3 __dict__与dir()区别,对象中私有属性的访问
  13. 计算机毕业设计SSM高校第二课堂管理系统【附源码数据库】
  14. mysql已启动但无法连接_MySQL无法正常启动,Navicat连接出错,解决2003问题
  15. android一键添加QQ群,关注微信公众号
  16. moment常用函数
  17. JPA、Hibernate和Spring Data JPA区别
  18. 采样率与频率之间的关系
  19. PS制作圆角透明图片
  20. 房价整体下降已成定局

热门文章

  1. VLAN--虚拟局域网
  2. archlinux下网易云音乐netease-cloud-music部分问题
  3. 玖月:如果真的能够穿越回到过去,我可能只会给自己一个微笑
  4. MapBoxMap 之 定位
  5. Python 图片与pdf相互转换
  6. mysql 入库乱码,如何解决mysql中文入库乱码问题
  7. 5G NR CSI-RS介绍(1)-- 物理时频资源映射
  8. iPad上的数学软件介绍与畅想
  9. GPU基本介绍与各GPU性能、价格比较
  10. python电话号码_Python有效电话号码