基于51单片机的智能水表

server/2024/10/18 2:36:34/

一.硬件方案

本设计主要以单片机>51单片机作为主控处理器的智能水表,该水表能够记录总的用水量和单次用水量,当用水量超出设定值时系统发出声光报警提醒,水量报警值能够通过按键进行自行设置,并且存储于AT24C02中,并且可以测量水流速度。测量的结果采用LCD1602液晶显示平显示出来。。
主要由单片机>51单片机+最小系统+LCD1602液晶显示模块+蜂鸣器模块+LED指示灯模块+继电器驱动模块+按键电路+AT24C02芯片模块+水泵驱动电路;

二.设计功能

(1)采用LCD1602液晶显示屏实时显示瞬时水流速、总用水量、本次用水量、水流量限值;
(2)可通过按键设置水流量限值,当本次用水量超过水流量限值时系统发出声光报警提醒;
(3)系统加入AT24C02存储芯片用于存储总用水量,具有掉电存储的功能,能够记录历史总共用水量;
(4)按键说明:“设置”键 :按下进入设置用水量限值;
“加值”键 :当设置时,按下限值+1;
“减值”键 :当设置时,按下限值-1;
“复位”键 :按下后单片机复位,总用水量不会清除;

三.设计原理图

(1)原理图主要采用AD软件进行设计,如图:
在这里插入图片描述

(2)Protues仿真图如下:
在这里插入图片描述

四.软件设计

主程序源码

/********************************************************
函数名称:void main()
函数作用:主函数
参数说明:
********************************************************/
void main()
{	if(key_jian==0){delayms(7);if(key_jian==0){AT24C02_write_date(0,0);      //写入【总流量】数据保存AT24C02_write_date(1,0);      //写入【总流量】数据保存AT24C02_write_date(2,1000/256);//写入【流量限值】数据保存AT24C02_write_date(3,1000%256);//写入【流量限值】数据保存}}ML2=AT24C02_read_date(0);	         //读取存储的【总流量】数据ML2=ML2*256+AT24C02_read_date(1);    //读取存储的【总流量】数据ML2=ML2*256+AT24C02_read_date(2);    //读取存储的【总流量】数据ML_up=AT24C02_read_date(3);	         //读取存储的【流量限值】数据ML_up=ML_up*256+AT24C02_read_date(4);//读取存储的【流量限值】数据LCD_init();			   //LCD1602初始化	T0_init();			   //定时器初始化while(1)			   //死循环{	scan();			   //按键检测处理if(set_f==0)display();     //正常显示界面elsedisplay2();    //设置流量限值}
}

资料链接:https://pan.baidu.com/s/1WsNsgcJJI_EBZvSNglOxGw?pwd=621g


http://www.ppmy.cn/server/49004.html

相关文章

C#面:详细阐述什么是 DTO

DTO(Data Transfer Object)是一种设计模式,用于在不同层之间传输数据。它的主要目的是在应用程序的不同部分之间传递数据,而不是直接传递实体对象。DTO通常是一个简单的POCO(Plain Old CLR Object)&#xf…

干部管理软件有哪些

随着信息技术的飞速发展,干部管理软件在各级党政机关、国企事业单位中扮演着越来越重要的角色。这些软件通过整合干部管理的各项业务流程,实现了干部信息的系统化、规范化和高效化管理。以下是几款主流的干部管理软件及其特点: 一、干部信息…

Linux---系统的初步学习【 项目四 管理Linux 系统用户、组和权限】

项目四 管理Linux 系统用户、组和权限 4.1 项目知识初储备 4.1.1Linux用户和组 1. Linux用户和组 在Linux系统中,用户和组是权限管理的基础。用户(User)代表系统中的一个账户,可以是个人或服务。组(Group&#xff…

Java课程设计:基于swing的学生信息管理系统

文章目录 一、项目介绍二、项目展示三、源码展示四、源码获取 一、项目介绍 这款Java swing实现的学生信息管理系统和jsp版本的功能很相似,简单的实现了班级信息的增删改查,学生信息的增删改查,数据库采用的是mysql,jdk版本不限&…

Python 中国象棋游戏【含Python源码 MX_011期】

简介: 中国象棋是一种古老而深受喜爱的策略棋类游戏,也被称为中国的国粹之一。它在中国有着悠久的历史,起源可以追溯到几个世纪以前。Python 中国象棋游戏是一个用Python编程语言编写的软件程序,旨在模拟和提供中国象棋的游戏体验…

automa学习:写一个取某东图书数据的片断

周五了,实在没事情了。正好上午有个朋友问automa的事,心想再写一个练习一下,毕竟,熟能生巧。 目标某东图书: 分析及介绍如下。 1.新建标签页 1.悬停元素。要注意 县 停 .cate_menu_item:nth-child(14) > .cate_…

自养号测评全揭秘:沃尔玛卖家如何实现销量稳步增长

在沃尔玛这片激烈的商业战场上,我作为一位销售者,深知在这个竞争激烈的市场中,测评对于提升产品排名、权重以及销量的关键作用。随着测评需求的不断增长,我们意识到,寻找可靠的测评服务不再是简单的选择,而…

二进制中的相反数

相反数的本质 相反数的本质是两数相加等于 0,1 加上 1 的相反数-1 永远等于 0。 二进制中取相反数的公式 对于二进制运算来说减法是通过加上一个负数实现的,所以想要达成两数相加等于 0 的情况一定是通过溢出来实现。两数相加等于 0 可以带入为 1111…