一、基本介绍

项目名:基于STM32的智能体重秤的设计与实现
项目编号:mcuclub-dz-1041
单片机类型:STM32F103C8T6
具体功能:
1、 通过MQ-135监测当前环境的空气质量;
2、通过DHT11监测当前环境的温湿度;
3、通过HX711监测当前人体的体重;
4、通过显示屏显示数据;
5、通过WiFi模块ESP8266将测量数据发送到手机端.

二、32实物图

单片机型号:STM32F103C8T6

板子为绿色PCB板,两层板,厚度1.2,上下覆铜接地。元器件基本上为插针式,个别降压芯片会使用贴片式。

供电接口:TYPE-C在这里插入图片描述

三、原理图

软件版本:AD2013

电路连线方式:网络标号连线方式

注意:原理图只是画出了模块的引脚图,而并不是模块的内部结构原理图在这里插入图片描述

四、PCB图

由原理图导出,封装很大一部分都是作者自己绘制,不提供封装库,只提供连接好的源文件。中间有一个项目编号,隐藏在单片机底座下,插入单片机后不会看到。

两层板,上下覆铜接地。在这里插入图片描述

五、系统框图

绘制软件:VISIO
此次设计是基于STM32F103C8T6单片机的基于STM32的智能体重秤系统的设计;该设计主要可以分为三部分:输入、输出和中控。中控部分采用STM32F103C8T6单片机作为主控芯片,主要是对输入进行处理然后控制输出;
输入又可以分四五部分:第一部分是空气质量检测模块,通过此模块可以获取当前环境的空气质量;第二部分是温湿度监测模块,通过此模块可以监测当前环境中的温湿度;第三部分是HX711重量检测模块,由此模块可以检测当前人体的重量;第四部分是供电模块,为系统提供稳定的电源支持。
输出主要可以分为一个部分:第一部分是显示部分,显示当前温度,湿度,重量以及空气质量值;
除此之外WIFI模块可以做为输出和输入:获取到当前的当前温度,湿度,重量以及空气质量值。
在这里插入图片描述

六、软件设计流程

在这里插入图片描述

七、部分程序展示

软件版本:keil5
逻辑程序和驱动程序分开,分布于main.c和其他.c文件

/**********************************
函数名:显示函数
传参值:无
返回值:无
**********************************/
void Display_Function(void)
{
	if(time_num % 10 == 0)
	{
		switch(display_num)											//根据不同的显示界面,显示不同的内容
		{
			case 0:									      		//界面0:		
				Oled_ShowCHinese(1,0,"温度:");		
				sprintf(display_buf,"%d.%dC ",temp_value/10,temp_value%10);
				Oled_ShowString(1,6, display_buf);
				
				Oled_ShowCHinese(2,0,"湿度:");		
				sprintf(display_buf,"%d.%d%% ",humi_value/10,humi_value%10);
				Oled_ShowString(2,6, display_buf);	
			
				Oled_ShowCHinese(3,0,"重量:");													
				sprintf(display_buf,"%dg   ",weight_value);
				Oled_ShowString(3,6,display_buf);	
			
				Oled_ShowCHinese(4,0,"空气:");													
				sprintf(display_buf,"%dppm   ",gas_value);
				Oled_ShowString(4,6,display_buf);	
			break;
			
			default:
			break;
		}
	}
}

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐