news 2026/4/3 6:27:04

STM32单片机分享:智能鱼缸系统

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
STM32单片机分享:智能鱼缸系统

目录

一、项目成品图片

二、项目功能简介

1.主要器件组成

2.功能详解介绍

三、项目原理图设计

四、项目PCB硬件设计

项目PCB图

五、项目程序设计

六、项目实验效果 ​编辑

七、项目包含内容

一、项目成品图片

哔哩哔哩视频链接:

https://www.bilibili.com/video/BV1zLWXzxEiD/?spm_id_from=333.1387.homepage.video_card.click&vd_source=72ef6ef177cfdd91e2e6a52968de5baf

资料分享看文章末尾

二、项目功能简介

1.主要器件组成

本设计由STM32F103C8T6单片机+WIFI模块ESP8266-01S电路+OLED屏幕电路+DS18B20温度传感器电路+TDS电导率传感器电路+浊度传感器电路+红外传感器电路+继电器电路+蜂鸣器电路+led电路+按键电路+电源电路。

2.功能详解

(1)环境采集:DS18B20温度传感器采集水质温度、TDS电导率传感器电路检测水质TDS电导率是否正常、浊度传感器检测水中浊度、红外传感器检测有人靠近鱼缸情况。
(2)屏幕显示:oled屏幕显示当前水质温度、浑浊度、电导率、照明状态、换水状态和是否有人靠近情况信息
(3)自动照明:当检测到有人靠近鱼缸时,自动开启照明
(4)阈值设置:通过app设置水温、浑浊度、电导率阈值
(5)自动换水:当检测到浑浊度过高时自动开启换水
(6)喂食控制:通过app按键控制喂食开关
(7)换水控制:通过app按键控制换水开关
(8)温度报警:当检测到温度过高时声光报警
(9)电导率报警:当检测到电导率过高时声光报警
(10)远程控制:通过WIFI连接手机APP,APP可以查看当前环境信息数据,可调节阈值范围

三、项目原理图设计

四、项目PCB硬件设计

五、项目程序设计

#include "stm32f10x.h" #include "delay.h" #include "usart.h" #include "USART2/usart2.h" #include "GPIO/gpio.h" #include "oled.h" #include "timer.h" #include "pwm.h" #include "DS18B20/ds18b20.h" #include "adc.h" /****************破晓电子工作室******************* *** 破晓单片机 *** 项目:STM32单片机智能鱼缸系统 *** BILIBILI:破晓单片机 *** 小红书:破晓单片机 *** 授权IP:破晓单片机 *** 淘宝:破晓单片机 *** 淘宝:破晓电子 *** 版本:V01.01 *** MCU:STM32F103C8T6 ******************破晓单片机***********************/ //显示界面 CaiDanJieGouTi KeyTab[SIZE_CAIDAN]= { {0 ,0 ,0 ,0 ,0 ,Main_Menu0}, {1 ,1 ,1 ,1 ,1 ,Main_Menu1}, {2 ,2 ,2 ,2 ,2 ,Main_Menu2}, {3 ,3 ,3 ,3 ,3 ,Main_Menu3}, {4 ,4 ,4 ,4 ,4 ,Main_Menu4}, {5 ,5 ,5 ,5 ,5 ,Main_Menu5}, {6 ,6 ,6 ,6 ,6 ,Main_Menu6}, {7 ,7 ,7 ,7 ,7 ,Main_Menu7}, {8 ,8 ,8 ,8 ,8 ,Main_Menu8}, } ; //传感器变量声明 typedef struct { uint16_t temp; uint16_t TDS_value; uint16_t TU_value; uint16_t youren; }SensorModulesValue; typedef struct { uint16_t tempyz; uint16_t tdsyz; uint16_t hunzhuoyz; }SensorThresholdValue; typedef struct { uint8_t led; uint8_t weishi; uint8_t relay; }DriveFlag; int main(void) { delay_init(); TIM3_Int_Init(9,7199);//定时器初始化 OLEDGUI_Config(); //OLED初始化 OLEDGUI_DispString(30,16,"Init...",16,1); SG90_Init(); //舵机初始化 PUMP_Init(); Adc_Init();//初始化 ADC DS18B20_Init();//初始化 DS18B20 TDS_Init();//初始化 TDS HZD_Init();//初始化 HZD LED_Init();//初始化 LED delay_ms(100); OLEDGUI_Clear(); //OLEDT清屏 uart1_init(9600); delay_ms(100); uart2_init(9600); delay_ms(100); uart3_init(9600);//串口初始化 delay_ms(100); //WIFI初始化 delay_ms(100); memset((uint8_t *)&currentDataPoint, 0, sizeof(dataPoint_t)); gizwitsInit(); while(1) { //获取按键值 key_scan(); //进入菜单界面显示处理数据 GetKeylnput(&Keystatus); //获取传感器数据 SensorDataGet(); //数据上传 currentDataPoint.valuetitemp=titemp/10; currentDataPoint.valueTDS_value=TDS_value; currentDataPoint.valueTU_value=TU_value; currentDataPoint.valueyouren=youren; currentDataPoint.valueled=led; currentDataPoint.valueweishi=weishi; currentDataPoint.valuerelay=relay; tempyz=currentDataPoint.valuetempyz*10; tdsyz=currentDataPoint.valuetdsyz; hunzhuoyz=currentDataPoint.valuehunzhuoyz; delay_ms(100); } }

六、项目实验效果 ​编辑

七、项目包含内容

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/22 10:42:25

day145—递归—二叉树的右视图(LeetCode-199)

题目描述给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。示例 1:输入:root [1,2,3,null,5,null,4]输出:[1,3,4]解释:示例 2&#xf…

作者头像 李华
网站建设 2026/3/27 21:31:48

GraphQL 高并发下还能稳如老狗?

GraphQL 高并发下还能稳如老狗? 我这些年踩坑踩出来的“保命”经验 作者:Echo_Wish 一、引子:GraphQL 很香,但你敢在高并发下用吗? 说句掏心窝子的话—— GraphQL 是真香,但也是个“事故多发体质”。 我见过不少团队,一开始用 GraphQL 用得那叫一个爽: 前端:“一个…

作者头像 李华
网站建设 2026/3/31 17:45:08

交通仿真软件:VISSIM_(22).交通仿真在城市规划中的应用

交通仿真在城市规划中的应用 1. 交通仿真概述 交通仿真是一种通过计算机模型来模拟实际交通系统运行情况的技术。它可以帮助城市规划师、交通工程师和政策制定者在虚拟环境中评估和优化交通系统的性能。交通仿真软件通过创建详细的交通网络模型,模拟车辆、行人和公共…

作者头像 李华
网站建设 2026/3/25 5:39:11

互联网通信的双引擎:全面解析 TCP/IP 与 UDP

在当今庞大的计算机网络版图中,数据传输的效率与稳定性决定了我们每一次点击的响应速度。无论是浏览网页、发送邮件,还是进行实时的视频通话,背后都离不开两套核心协议的支持:**TCP/IP(传输控制协议/互联网协议&#x…

作者头像 李华
网站建设 2026/4/1 3:05:42

为什么手机越用越卡?原来是这 3 个地方在拖后腿

很多人都有这样的体验:刚买的手机流畅得像风,用了一年半载后却开始卡顿、延迟、掉帧。其实,手机变慢并不是 “老了” 这么简单,往往是几个关键地方在悄悄拖后腿。第一个拖慢手机的元凶,是存储长期处于 “爆满” 状态。…

作者头像 李华
网站建设 2026/3/30 21:26:03

四叶草PDF阅读器(无广告免费PDF阅读器)

四叶草PDF阅读器是一款简洁、轻量且易于使用的PDF阅读器。它提供了基本的阅读和浏览功能,使用户能够方便地浏览和查看PDF文件。该软件的界面简洁明了,容易上手,适合不熟悉PDF阅读器操作的用户。 软件功能 打开和浏览PDF文件:四叶…

作者头像 李华