基于51单片机的水流量传感器测试系统
目录
热水器上水报警器
问题咨询及项目源码下载请加群:
群名:IT项目交流群
群号:245022761
一、实验目的
1. 了解水流量传感器工作原理
2. 学会使用水流量传感器检测水流量
3. 会使用八段数码管显示热水器水箱水量百分比
4. 学会使用蜂鸣器发出报警声
二、设计项目要求
经常会看到某家属楼外墙排水管水哗哗的流着,原来是某家太阳能热水器上水忘记关阀门了,水白白浪费掉,非常可惜!为解决太阳能热水器上水忘记关阀门问题,请设计一款热水器上水报警器。该报警器通过水流量传感器检测上水的体积,并显示已上水的体积占总体积的百分比(最大值为100),当水上满后,启动蜂鸣器报警提醒用户关闭上水水阀。假设热水器总容量为1升。
三、项目系统连接图
四、代码实现部分
//数码管显示模块#include <shumaguan.h>
sbit DX=P2^6;
sbit WX=P2^7;
u8 code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71,0x00}; //共阴数码管编码void Print_u32_LED(u32 n)//输出6位无符号整数(0-999999)到6位数码管,不足6位时,前面不显示
{u8 t=0xdf;while(n){ P0=0xff; //消影WX=1;//允许更新位码P0=t; //送位码WX=0;//锁存位码P0=0x00; //消影DX=1;//允许更新段码P0=table[n%10]; //送段码DX=0;//锁存段码n=n/10;t=_cror_(t,1);delay_ms(3);}
}
void Print_str_LED(u8 *f)//输出数字串到数码管
{u8 t=0xdf,i;i=strlen(f);while(i){ P0=0xff; //消影WX=1;//允许更新位码P0=t; //送位码WX=0;//锁存位码P0=0x00; //消影DX=1;//允许更新段码switch(f[i-1]){case '.':i--;P0=table[f[i-1]-'0']|0x80;break;case '-':P0=0x40;break;case ' ':P0=0x00;break;default:P0=table[f[i-1]-'0']; } //送段码DX=0;//锁存段码i--;t=_cror_(t,1);delay_ms(3);}}void Print_float_LED(float n,u8 x)//输出小数(有效数字不超过6位)到6位数码管,保留x(0-3)位小数
{u8 prtstr[10];switch(x){case 0:sprintf(prtstr,"%.0f",n);break;case 1:sprintf(prtstr,"%.1f",n);break;case 2:sprintf(prtstr,"%.2f",n);break;case 3:sprintf(prtstr,"%.3f",n);break;} Print_str_LED(prtstr);}
main函数代码实现:#include <config.h>
#include <shumaguan.h>
sbit beep=P2^3; //蜂鸣器引脚
u8 print[20];//输出缓冲区
unsigned int num=0;
float current=0.0;
void delay_ms(u16 x)//毫秒延时函数
{u16 i;u8 j;for(i=0;i<x;i++)for(j=0;j<115;j++);
}
void delay_us(u8 t) //10倍微秒延时函数,延时10*t微秒
{u8 i;for(i=0;i<=t;i++);
}void Alarm(u8 t) //蜂鸣器报警,持续t秒
{u8 i,j,k; for(j=0;j<t;j++){ for(i=0;i<200;i++){beep=0;delay_us(50);beep=1;delay_us(50);}for(k=0;k<100;k++){beep=0;delay_us(110);beep=1;delay_us(110);}}
}void main()
{u8 i,j;// Init_COM(); //初始化
// EA=1;//IT0=1;//EX0=1;while(1){P2=0X00; Alarm(5);// beep=0;// if(num>=450) { Alarm(5);}//current=100*num/450.0;//sprintf(print,"%d",current/1000);//for(i=10;i>0;i--) Print_float_LED(current,2); //输出到数码管}
}void EX_INT0() interrupt 0 /*INT0中断服务程序*/
{num++;}
附上本人在大学学习期间所有学习实现的demo,这些项目的实现都通过本人亲自测试运行,也是自己学习中知识的一点一点积累,整理不易,希望能帮到大家,不足之处大家多多交流。
QQ:1805523903
邮箱:1805523603@qq.com
昵称:忘尘
世界不同角落共同努力,变成更优秀的我们。
1.51单片机学习整理
基于51单片机的智能光控路灯 :https://download.csdn.net/download/qq_37037348/11071869
基于51单片机超声波测距(内含源程序,原理图及PCB源文件):https://download.csdn.net/download/qq_37037348/11071866
基于51单片机的智能安防报警系统:https://download.csdn.net/download/qq_37037348/11071865
基于51单片机模块化编程模块 (红外、液晶显示屏、温湿度等传感器模块化)
:https://download.csdn.net/download/qq_37037348/11053222
基于51单片机pwm控制的呼吸灯程序
https://download.csdn.net/download/qq_37037348/11053195
51单片机与上位机串口通信实例包含详细讲解的完整代码
https://download.csdn.net/download/qq_37037348/11053164
基于51单片机的直交流电压表仿真 (详细代码实现,设计讲解)
https://download.csdn.net/download/qq_37037348/11053145
基于51单片机胸牌 详细代码实现,设计讲解)
https://download.csdn.net/download/qq_37037348/11053125
基于51单片机3x4按键拨号 (详细代码实现,设计讲解)
https://download.csdn.net/download/qq_37037348/11053093
基于51单片机拨号 (详细代码实现,设计讲解)
https://download.csdn.net/download/qq_37037348/11053090
基于51单片机警灯系统设计(详细代码实现,设计讲解)
https://download.csdn.net/download/qq_37037348/11053086
基于51单片机点亮一个小灯(详细代码实现,设计讲解,学习51基础实验)
https://download.csdn.net/download/qq_37037348/11053084
基于51单片机开发的排球计时器,附有详细注释讲解,为大家提供最真心的帮助
https://download.csdn.net/download/qq_37037348/11053024
基于51单片机的音乐播放器,源码详细注释
https://download.csdn.net/download/qq_37037348/11053022
2.Android 开发学习整理:
Android-serialport 手机App串口通信代码实现:
https://download.csdn.net/download/qq_37037348/11050521
Android-serialport 手机App网络通信实例代码实现:
https://download.csdn.net/download/qq_37037348/11050516
Android 第一个App详细教程、基础实验 :
https://download.csdn.net/download/qq_37037348/11050515
3.计算机视觉(深度学习、神经网络的学习)
feature extraction(深度学习,特征提取,神经网络:https://download.csdn.net/download/qq_37037348/11065968
feature extraction(深度学习,特征提取,神经网络多种训练模型详细实现):
https://download.csdn.net/download/qq_37037348/11065974
欢迎大家加入学习项目交流,为大家分享各类个人学习项目及学习资料,互相交流互相学习。
问题咨询及项目源码下载请加群:
群名:IT项目交流群
群号:245022761
基于51单片机的水流量传感器测试系统相关推荐
- 单片机ch2o程序_基于51单片机的室内甲醛测试系统
1.2 5G14433A/D转换器 5G14433A/D转换器是国产的广为流行的最典型的双积分3位半A/D转换器它具有抗干扰性能好,转换精度高(相当于11位二进制数),自动校零,自动极性输出,自动量程 ...
- B47 - 基于51单片机的RFID停车计费系统
任务摘要 当今社会,交通压力不断增加,智能停车场管理系统是人们对便捷高效交通的一种追求.本智能停车场管理系统运用RFID技术,采用STC8H8K64U单片机.RC522.串口屏.光电传感器实现系统设计 ...
- 基于51单片机的智能浇花系统(可做毕设)
基于51单片机的智能浇花系统(可做毕设) 一.系统介绍 二.仿真展示 三.实物展示 四.仿真过程 五.代码 1.ADC0832 2.LCD1602 3.按键 4.水泵 5.温湿度 6.定时器 7.ma ...
- 基于51单片机的只能电子温度计硬件系统
基于51单片机的智能电子温度计硬件系统 使用Pt100传感器:四位LCD显示实时温度值:4个按键用于设置上下限温度值:上下限超限声音报警,报警值可随时设置:设置的报警值能保存在EEPROM中:实时温度 ...
- 基于51单片机的智能宠物喂食系统
基于51单片机的智能宠物喂食系统 基于51单片机智能宠物喂食系统 功能: 1.检测宠物温湿度 2.通过重力传感器检测剩余食物重量并显示 3.实物重量不够,舵机转动,投喂食物 只有资料 编号:96206 ...
- 基于51单片机的自动浇花系统
目录 一.项目需求 二.仿真 三.程序 四.资料清单 资料下载地址:基于51单片机的自动浇花系统 一.项目需求 1.自动检测土壤湿度.温度.光照强度: 2.土壤湿度过低驱动水泵进行浇花: 3.LCD1 ...
- 基于51单片机的智能家居环境监测系统
基于51单片机的智能家居环境监测系统 1)实时监测温度.湿度.烟雾浓度 2)按键可更改三个参数的报警值上下限 3)声光报警 程序有详细注释!!! 资料包含: 仿真.程序.AD原理图.PCB.报告等 P ...
- 基于51单片机轮胎胎压监测系统-压力传感器(仿真+程序+报告)
本设计: 基于51单片机轮胎胎压监测系统-压力传感器(仿真+程序+报告) Proteus仿真版本:proteus7.8 程序编译器:keil 4 编程语言:C语言 编号C0018 ----本设计分享下 ...
- 基于51单片机的简易太阳能追踪系统
基于51单片机的简易太阳能追踪系统Proteus仿真如图所示. 系统主控核心为AT89C51单片机: 动作执行部分为两个0-360度舵机: 4个电位器模拟光敏电阻检测阵列: 模拟电压采集部分使用74H ...
最新文章
- android美颜功能,Android
- 一步一步学List Control控件的用法(第二步)----创建第一行
- 如何使用iPad移动办公
- Hi Table定义未来电视!祝贺海信发布S7社交电视! ​
- 今日arXiv精选 | 21篇EMNLP 2021最新论文
- 快速完全删除node_modules
- IBM TS3200 Drive故障处理方案
- Flask中的 url_for() 函数
- STM32----摸石头过河系列(七)
- java并发编程入门_探讨一下!Java并发编程基础篇一
- F#学习:类型的定义和使用语法
- 【转】C语言中的符号优先级
- 人机交互,情感计算,,人工智能相关研究的科研团队
- 威漫哨兵机器人_漫威:哨兵机器人天下无敌?这几位变种人就不把他们放在眼里...
- 微信小程序连接onenet控制RGB三色灯
- Unity 用ml-agents机器学习造个游戏AI吧(2)(入门DEMO)
- 曾经光辉岁月 永远海阔天空
- win7计算机出现空白图标,win7任务栏右下角图标显示为空白如何解决_win7任务栏右下角图标空白怎么去掉...
- 计算机编程情话,程序员的土味情话~(表白代码第二波)
- wps在Linux上使用命令打开文档的方法
热门文章
- 自学编程80余年,这些私藏的实用工具学习网站陪我走到了现在,必须收藏,学习效率翻倍! - 工具篇
- linux下centos生成火车动画sl命令
- gulp详细入门教程
- 嵌入式开发-服务器(二) HTTP服务器
- 1006: 求等差数列的和
- 如何提高办公效率?不如试试智能化OA办公系统
- swing java awt_java中AWT和SWing的区别与联系
- 从根上彻底理解各种变换之二:傅里叶变换
- Service Discovery 与微服务架构有什么关系?
- 梦幻西游手游转区没服务器显示不出来,梦幻西游转区攻略 转区条件详细介绍...