基于STM32的水质浑浊度和PH值监测系统设计(仿真+程序+讲解)

news2024/11/13 19:07:39

基于STM32的水质浑浊度和PH值监测系统设计(仿真+程序+讲解)

仿真图proteus 8.9

程序编译器:keil 5

编程语言:C语言

设计编号:C0077

这里写目录标题

  • 演示讲解视频
  • 1.主要功能
  • 2.仿真
  • 3. 程序
  • 4.资料清单&下载链接

演示讲解视频

基于STM32的水质浑浊度和PH值监测系统设计(仿真+程序+讲解)

1.主要功能

结合实际情况,基于STM32F103单片机设计一个电子水质检测系统。该系统应满足的功能要求为:

本次嵌入式课程设计综合实验的内容STM32的水质浑浊度和PH值监测系统设计。完成LCD液晶显示、水质检测、灯光报警等多项任务。

1、以STM32为最小系统电路进行连接,用液晶显示屏水质浑浊度,PH值浑浊度阈值,PH值阈值。

2、以两路STM32内部ADC电路分别检测水质浑浊度和PH值。

3、当水质浑浊度大于等于或PH值大于等于阈值时,报警灯亮,都低于则报警灯灭。

主要硬件设备:STM32F103单片机、LCD1602液晶。

以下为本设计资料展示:

2.仿真

整体设计方案

该系统为电子水质检测系统,其主要的功能有:以stm32为最小系统电路进行连接,用液晶显示屏水质浑浊度和水质PH值数据。

测试如下所示:

开始仿真后LCD1602第一行zd显示检测的浑浊度,PH显示酸碱度。第二行的表示阈值。第二行zd_s表示浑浊度阈值为50%,PH_S表示酸碱度报警值为7。

img

浑浊度或者酸碱度高于阈值则报警灯亮。如下图所示:

img

3. 程序

img

部分代码:

int main(void)
{
  int ADC_num;
	int temp1,temp2;
	
	ADC1_GPIO_Config();//ADC的初始化
  ADC_Config();   	
	LCD1602_Init(); 
	LCD1602_ShowStr(0,1,"zd_S:50% PH_S:7",15);//浑浊度报警值显示 PH值报警值显示
	LCD1602_ShowStr(0,0,"zd:      PH:   ",15);//显示zd PH
	LED();
	
	while(1)
	{
		ADC_num=Get_ADC(ADC_Channel_0);
		temp1=ADC_num*100/4096;							//计算得到浑浊度
		LCD1602_WriteCmd( 0x80 + 3 );
		LCD1602_WriteDat( temp1/10 + 0x30 );//显示浑浊度
		LCD1602_WriteDat( temp1%10 + 0x30 );
		LCD1602_WriteDat( '%' );
		
		ADC_num=Get_ADC(ADC_Channel_1);
		temp2=ADC_num*10/4096;							//计算得到PH值
		LCD1602_WriteCmd( 0x80 + 13 );
		LCD1602_WriteDat( temp2 + 0x30 );
		
		if(( temp1 >= 50 )||( temp2 >= 7 ))//计算是否亮报警灯
		{
			GPIO_ResetBits( GPIOA,GPIO_Pin_10 );
		}
		else
		{
			GPIO_SetBits( GPIOA,GPIO_Pin_10 );
		}
	}
}

4.资料清单&下载链接

img
资料下载链接:

https://docs.qq.com/doc/DS0hrelFRU213dFdn

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/393101.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于JSP的网上书店的设计与实现

技术:Java、JSP等摘要:近年来,随着互联网的迅速普及,网络已经走进了千家万户,作为信息交流的一种平台,它给我们的日常生活带来了很大的便利。今天,各种各样的网站已经深入到了我们的日常生活&am…

单例模式之饿汉式

目录 1 单例模式的程序结构 2 饿汉式单例模式的实现 3 饿汉式线程安全 4 防止反射破坏单例 5 总结 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。所谓单例就是在系统中只有一个该类的实例,并且提供一个访问该实例的全局…

2023年房地产定价模型研究报告

第一章 房地产定价模型概述 受疫情和房地产发展模式影响,目前我国房地产行业遭受着多重冲击,消费者不断降低的购房意愿,频繁出现的烂尾楼问题,建筑材料和工人价格的不断上涨等。而房地产行业本身又是带动如电器,装修&…

《C++程序设计原理与实践》笔记 第14章 设计图形类

本章借助图形接口类介绍接口设计的思想和继承的概念。为此,本章将介绍与面向对象程序设计直接相关的语言特性:类派生、虚函数和访问控制。 14.1 设计原则 我们的图形接口类的设计原则是什么? 14.1.1 类型 我们的程序设计理念是在代码中直…

人工智能( AI )将如何颠覆项目管理?看看这六大关键领域

Gartner 研究预测,到 2030 年,80% 的项目管理任务将由 AI 运行,由大数据、机器学习和自然语言处理提供支持。 这些即将到来的技术发展视为前所未有的机遇。为这一颠覆时刻做好充分准备的企业和项目负责人将收获最大的回报。项目管理的每个方…

Linux操作系统学习(互斥)

文章目录线程安全互斥量互斥锁的原理线程安全补充可重入函数死锁线程安全 ​ 由于多个线程是共享同一个地址空间的,也就是很多资源都是共享的,那么线程通信就会很方便,但是方便的同时缺乏访问控制,可能会由于一个线程的操作问题&…

元数据管理、治理、系统、建设方案、范例等

【数据治理工具】–元数据系统 1.元数据系统 1.1 概述 如果想建设好元数据系统,需要理解元数据系统的相关概念,如数据、数据模型、元数据、元模型、ETL、数据血缘等等。 首先,要清楚数据的定义、数据模型的定义。数据一般是对客观事物描述…

全国程序员薪酬大曝光!看完我酸了····

2023年,随着互联网产业的蓬勃发展,程序员作为一个自带“高薪多金”标签的热门群体,被越来越多的人所关注。在过去充满未知的一年中,他们的职场现状发生了一定的改变。那么,程序员岗位的整体薪资水平、婚恋现状、职业方…

Halo开源建站工具

目录 特性 代码开源 易于部署 插件机制 附件管理 搜索引擎 快速开始 最新主题 下载安装主题 开发者指南 我的本地站点 docker管理 本地站点 gaghttps://halo.run/ 支持h2文件系统存储数据,支持docker部署。 特性 我们会一直探索,追求更好…

【JavaSE】方法的使用初学者易懂

前言 大家好,我是程序猿爱打拳。今天讲解的是Java中方法的使用。Java中的方法类似于C语言里面的函数其中都有实参与形参。但Java中的方法又比C语言中的函数更为强大,为何呢?请看下文。 目录 1.为什么要有方法? 2.方法的概念及使…

Centos 虚拟机安装

文章目录Centos 虚拟机安装一、模版虚拟机环境准备安装VMvare,安装CentosCentos 虚拟机安装 一、模版虚拟机环境准备 安装VMvare,安装Centos 创建虚拟机,然后选择自定义安装 然后是默认的,点一下步 这一步选择稍后安装操作系…

Java下浅谈String.valueOf()

今日遇到遇见无语的事情&#xff0c;mybatis查询数据库结果 List<Map<String, String>> 需要转换为字符串&#xff0c;但是在debug时&#xff0c;在idea小窗口单独执行代码&#xff0c;是可以正常编译的&#xff0c;离开idea小窗口执行就报错&#xff1a; 类型转换…

Anaconda安装Pytorch(win系统)

前面有一篇博客专门讲了安装CPU版本的Pytorch&#xff0c;因为当时没有GPU&#xff0c;现在有了3090&#xff0c;专门记录一下安装GPU版的过程。一、添加清华源可参考官方anaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror创建虚拟环境若没有…

一文解决Vue所有报错【持续更】

前言 Vue是一个流行的前端框架&#xff0c;许多web开发人员使用Vue来构建他们的应用程序。然而&#xff0c;正如任何其他框架一样&#xff0c;Vue也可能会发生错误。在这篇技术文章中&#xff0c;我们将探讨Vue常见的报错以及如何解决它们。 常见错误 1. Vue Template Error …

【目标检测】61、Dynamic Head Unifying Object Detection Heads with Attentions

文章目录一、背景二、方法2.1 scale-aware attention2.2 spatial-aware attention2.3 task-aware attention2.4 总体过程2.5 和现有的检测器适配2.6 和其他注意力机制的关联三、效果四、代码论文链接&#xff1a; https://arxiv.org/pdf/2106.08322.pdf代码链接&#xff1a;htt…

一文带你了解阿里的开源Java诊断工具 :Arthas

Arthas 是阿里开源的 Java 诊断工具&#xff0c;相比 JDK 内置的诊断工具&#xff0c;要更人性化&#xff0c;并且功能强大&#xff0c;可以实现许多问题的一键定位&#xff0c;是我用到的最方便的诊断工具。 下载和安装见官网 https://arthas.aliyun.com/doc/profiler.html 下…

Gem5模拟器,如何在linux系统中查看内存、CPU、硬盘、进程、网络等信息(十二)

虽然说&#xff0c;这个记录的是与Linux相关的操作&#xff0c;每次查每次忘&#xff0c;必须写一个来归总一下&#xff0c;以免我漫山遍野找命令。但是不想新开一一个主题&#xff0c;再加上确实是在运行模拟器时会关注这方面的信息&#xff0c;就把这一节搁这儿啦。 常见的查…

MedCalc v20.217 医学ROC曲线统计分析参考软件

MedCalc是一款医学 ROC 曲线统计软件,用于ROC曲线分析的参考软件,医学工作者设计的医学计算器,功能齐全。它可以帮助医生快速作出普通的医学计算,从而对症下药。提供超过76种常用的规则和方法,包括:病人数据、单位参数、费用计算等等。甚至可以将图形另存为BMP,PNG,GIF…

ATL中__if_exists的替代方案

__if_exists 和 __if_not_exists 是什么? __if_exists 和 __if_not_exists 是微软 ATL (Active Template Library&#xff0c;活动模板库) 中的关键字&#xff0c;可以用来在编译期间测试一个标识符是否存在。如果该标识符存在&#xff0c;则其关联的语句将会被执行。 __if_e…

2023年3月软考中级(系统集成项目管理工程师)报名走起!!!

系统集成项目管理工程师是全国计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试&#xff08;简称软考&#xff09;项目之一&#xff0c;是由国家人力资源和社会保障部、工业和信息化部共同组织的国家级考试&#xff0c;既属于国家职业资格考试&#xff0c;又是职…