本文主要是介绍基于单片机水塔水位检测控制系统设计-毕设资料,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
资料下载地址-1081(百度网盘):点击下载
通过传感器检测水位高度,显示在液晶上,并有内置范围,超出范围则可以启动出水泵和进水泵电机,最终使得水位处于正常范围之内。
/* 预处理区 */
#include <reg52.h> /* 加载"reg52.h"头文件 */
#include <math.h> /* 加载"math.h"头文件 *//* 宏定义 */
#define unchar unsigned char /* 无符号字符型 */
#define unint unsigned int /* 无符号整型 */
#define N 10 /* 延时参数 *//* 数组常量定义 */
unchar code row1[] = ">>Liquid Level<<"; /* 液晶输出的第一行显示编码 */
unchar code row2[] = { "0123456789" }; /* 液晶的0~9编码 */
unchar code tip_1[] = "Please lini cap"; /* 液晶输出行 */
unchar code tip_2[] = "then push'start'"; /* 液晶输出行 */
/* 位定义 */
sbit lcd_rs = P2 ^ 0; /* 液晶的数据命令选择端 */
sbit lcd_rw = P2 ^ 1; /* 液晶的读写选择端 */
sbit lcd_en = P2 ^ 2; /* 液晶的使能端 */
sbit show = P1 ^ 0; /* 开始按键 */
sbit clear = P1 ^ 1; /* 清屏按键 */
sbit led = P1 ^ 2; /* 电源灯 */
sbit JIN = P2 ^ 3; /*进水泵*/
sbit CHU = P2 ^ 4; /*出水泵*/
sbit alerm = P2 ^ 7;
/* 变量定义 */
unint flag = 0; /* 标志位 */
double count = 0; /* 计数 */
double final = 0; /* 高电平时间 */
double cx = 0; /* 电容数值 */
unint w1, w2, w3, w4, i; /* 变量定义 百位,十位,个位,十分位,循环计数位。 *//* 自定义函数声明 */
void init(); /* 初始化函数 */
这篇关于基于单片机水塔水位检测控制系统设计-毕设资料的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!