一、基本介绍

项目名:基于嵌入式的香薰灯的设计与实现
项目编号:mcuclub-dz-981
单片机类型:STM32F103C8T6
1、通过温湿度DHT11监测模块监测当前环境的温湿度,监测到温度或者湿度大于最大值、间隔一小时喷5s(继电器控制雾化片),否则间隔2小时喷5s模拟,可以设置间隔时间
2、通过液位监测模块监测当前香薰的剩余量,监测到没有声光报警(开香薰时声光报警3声提醒,并关闭香薰)
3、通过按键设置阈值,以及不同的模式,睡眠模式和休闲放松模式,睡眠模式,香薰灯低亮,放松模式,香薰灯高亮
4、通过OLED显示测量数据;
5、通过蓝牙将监测的数据传输到 手机,手机可以设置阈值,启动香薰;

二、资料总览

实物资料

请添加图片描述

三、32单片机部分资料展示

1、实物图展示

单片机型号:STM32F103C8T6
供电接口:TYPE-C
板子类型:PCB集成板,厚度1.2,两层板(上下层覆铜接地)
器件类型:元器件基本上为插针式,个别降压芯片会使用贴片式。在这里插入图片描述

2、原理图展示

软件版本:AD2013
电路连线方式:网络标号连线方式
注意:原理图只是画出了模块的引脚图,而并不是模块的内部结构图在这里插入图片描述

3、PCB图展示

由原理图导出,中间有一个项目编号,隐藏在单片机底座下,插入单片机后不会看到。
两层板,上下覆铜接地。在这里插入图片描述

四、系统框图

绘制软件:VISIO
本设计以STM32F103C8T6单片机为核心控制器,构建一个智能香薰灯的控制系统。主要可以分为三部分:输入、输出和中控。中控部分采用STM32F103C8T6单片机作为主控芯片,主要是对输入进行处理然后控制输出;
输入部分由以下模块组成:第一部分是温湿度检测模块,用于检测当前环境的温湿度;第二部分是液位检测模块,用于检测当前杯内的水量;第三部分是按键模块,用于设置正常和异常的时间,切换模式以及香薰继电器的开关;第四部分是供电模块,为系统提供稳定的电源支持。
输出部分由以下模块组成:第一部分是OLED显示模块,用于显示当前温湿度,模式以及水位。第二部分是继电器模块:用来模拟香薰的工作;第三部分是LED模块,在不同模式下灯的亮度不同;
除此之外蓝牙可以做为输入和输出:接收到手机上发的测量值,以及设置阈值控制模式的切换和继电器的启动在这里插入图片描述

五、部分程序展示

软件版本: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,"%d%%   ",water_value);
				Oled_ShowString(3,6,display_buf);
Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐