基于51单片机的水泵流量检测设计(毕业设计)-学习笔记

 


模式一
1、通过按键可以设置容器中水的重量,按下确认按键后,继电器闭合(水泵加水),当容器中的水达到预设的重量后,继电器断开(水泵停止加水)。并在1602液晶上实时显示容器中水的重量以及设置的水重量。
2、称重传感器量程为0-5KG,通过按键也可以设置容器的警戒水重量的阈值,如果容器中的水重量超过此阈值,则蜂鸣器报警,否则,不报警。并在1602液晶上实时显示此阈值。
模式二
1、通过涡轮流量传感器电路检测水泵的水流量,并且可以通过按键设置出水量,达到设置的出水量后,水泵停止.并在液晶上实时显示设置的出水量和实际出水量。


通过拨动开关选择工作模式,即模式一和模式二。
模式一
1、通过按键可以设置重量的两个阈值A/B,当前重量超过阈值A,则继电器断开,否则继电器闭合。当前重量超过阈值B,则蜂鸣器报警,否则不报警。并在液晶1602上显示实际重量以及阈值A、B。
模式二
1、按键设置水泵出水量,确定后,继电器闭合,当达到设置的C后,继电器断开.并在液晶上实时显示设置的出水量和实际出水量。

#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
#include<stdio.h>
#include "1602.h"
#include "delay.h"
#include "hx711.h"

sbit key1 =P2^0;	//引脚定义
sbit key2 =P2^1;
sbit key3 =P2^2;
sbit key4 =P2^3;
sbit buttom =P1^2;
sbit buzzer =P1^3;
sbit relay =P1^4;

xdata char dis0[16];		 //	 显示暂存 用于第一行显示
xdata char dis1[16];		 //	 显示暂存 用于第二行显示
xdata unsigned long time_20ms=0; 	//	系统定时计数
unsigned char ReadFlag=0;		//读取标志
unsigned char setFlag =0;
xdata long Weight_mp=0;			//毛重
xdata long Weight_Shiwu=0;		  //实物重量
xdata unsigned long Weight_Maopi=0;	 //读取初始化值

bit rekey =0;	//按键防止重复
bit startFlag1 =0;

  

posted @ 2020-12-15 15:57  MCU创新DIY  阅读(167)  评论(0)    收藏  举报