首页 > 分享 > 基于51单片机的灌溉系统【温湿度,定时,水量,LCD1602】(仿真)

基于51单片机的灌溉系统【温湿度,定时,水量,LCD1602】(仿真)

自动灌溉系统

1、系统分为湿度控制模式和定时模式

2、湿度控制模式下,当湿度低于下限时启动水泵,高于上限时停止水泵

3、定时模式下,当计时时间到达设定值时,启动水泵。水量可设置

4、设置湿度上下限、加水水量

#include "lcd1602.h"

void delay_uint(uint i)

{

while(i--);

}

/********************************************************************

* 名称 : write_com(uchar com)

* 功能 : 1602命令函数

* 输入 : 输入的命令值

* 输出 : 无

***********************************************************************/

void write_com(uchar com)

{

e=0;

rs=0;

rw=0;

P0=com;

delay_uint(20);

e=1;

delay_uint(20);

e=0;

}

/********************************************************************

* 名称 : write_data(uchar dat)

* 功能 : 1602写数据函数

* 输入 : 需要写入1602的数据

* 输出 : 无

***********************************************************************/

void write_data(uchar dat)

{

e=0;

rs=1;

rw=0;

P0=dat;

delay_uint(20);

e=1;

delay_uint(20);

e=0;

}

/********************************************************************

* 名称 : write_sfm(uchar hang,uchar add,uchar date)

* 功能 : 设置当前行和列

* 输入 : 行,列

* 输出 : 无

***********************************************************************/

void write_sfm(uchar hang,uchar add)

{

if(hang==1) //设置当前行

write_com(0x80+add);

else

write_com(0x80+0x40+add);

}

/********************************************************************

* 名称 : write_string(uchar hang,uchar add,uchar *p)

* 功能 : 改变液晶中某位的值,如果要让第一行,第五个字符开始显示"ab cd ef" ,调用该函数如下

write_string(1,5,"ab cd ef;")

* 输入 : 行,列,需要输入1602的数据

* 输出 : 无

***********************************************************************/

void write_string(uchar hang,uchar add,uchar *p)

{

if(hang==1)

write_com(0x80+add);

else

write_com(0x80+0x40+add);

while(1)

{

if(*p == '') break;

write_data(*p);

p++;

}

}

/********************************************************************

* 名称 : init_1602()

* 功能 : 初始化1602液晶

* 输入 : 无

* 输出 : 无

***********************************************************************/

void init_1602()

{

write_com(0x38);//数据总线为8位,显示2行,5x7点阵

write_com(0x0c);//开显示,有光标,光标闪烁

write_com(0x06);//光标自动右移

delay_uint(1000);//等待设置完成

}

资料借鉴于此纷传

相关知识

基于51单片机的自动浇花浇水系统LCD1602显示仿真
基于51单片机的自动浇花灌溉系统设计
基于51单片机的智能浇花系统(可做毕设)
基于51单片机的智能浇花系统设计
【Proteus仿真】【51单片机】自动浇花灌溉系统设计
基于STM32单片机远程浇花花盆GSM短信浇水补光灌溉系统
【51毕业设计案例】【015】智能浇花灌溉系统
51单片机的花卉、农田自动浇水灌溉系统开发,Proteus仿真,原理图和C代码
基于stm32单片机智能浇花自动灌溉控制系统Proteus仿真和程序源码全套资料
基于STM32的土壤湿度检测自动浇水系统proteus仿真设计(仿真+程序+设计报告+讲解视频)

网址: 基于51单片机的灌溉系统【温湿度,定时,水量,LCD1602】(仿真) https://m.huajiangbk.com/newsview403527.html

所属分类:花卉
上一篇: 一种花卉苗木培育用定时浇水系统的
下一篇: 基于单片机的盆花自动浇水系统的设