1.实现功能
采用STM32开发板作为主控制单元,负责数据采集、处理和控制。DHT11温湿度传感器用于实时测量环境的温湿度。红外体温传感器检测人体体温。OLED显示屏用于显示温湿度数据。采用发光二极管,当温湿度超过设定阈值时,发出报警信号。使用红外人体传感器,探测家中是否有人。按键设定报警阈值,同时自动调节模块根据设定的阈值,自动调整加湿器的工作状态。使用Wi-Fi模块(ESP8266),用于将温湿度体温数据传输到机智云APP。
2.原理图与PCB
本次使用STM32F103C8T6单片机最小系统板,在此基础上进行外围电路的绘制。
原理图如下:

PCB如下

3.实物展示视频
智能家居功能展示
4.各模块介绍
4.1STM32F103C8T6最小系统板

STM32F103C8T6最小系统板是一款基于ARM Cortex-M3内核的微控制器开发板,核心芯片为ST公司的STM32F103C8T6(属STM32F1系列)。以下是其关键特点及组成:
**核心参数**
-
**MCU型号**:STM32F103C8T6
-
**内核**:32位ARM Cortex-M3,主频72MHz
-
**Flash**:64KB(实际可用可能为128KB,部分型号隐藏容量)
-
**RAM**:20KB
-
**GPIO**:37个(含多种复用功能)
-
**外设**:USART、SPI、I2C、ADC、定时器等
**最小系统组成**
- **电源电路**
-
输入电压:通常3.3V(可通过USB或外部5V转换)
-
稳压芯片:如AMS1117-3.3,将5V降压至3.3V
-
滤波电容:确保电源稳定
- **时钟电路**
-
**外部晶振**:8MHz(HSE)为主时钟源,部分板载32.768kHz(LSE)用于RTC
-
**内部RC振荡器**:备用时钟(8MHz HSI)
- **复位电路**
-
复位按键:手动复位
-
阻容复位:通常10k电阻+0.1μF电容
- **调试接口**
-
**SWD**(2线):SWDIO、SWCLK(常用ST-Link调试)
-
**JTAG**(可选):部分板载留出接口
- **Boot模式选择**
- BOOT0/BOOT1跳线帽:选择启动模式(Flash、SRAM或系统存储器)
- **用户接口**
-
LED:至少1个用户LED(PC13常用)
-
按键:复位键+用户键(如PA0)
这种板子适合初学者和快速原型开发,是STM32入门的热门选择。
4.2 ESP01S

ESP01S模块是一款基于乐鑫ESP8266芯片的Wi-Fi串口模块,专为物联网和无线通信应用设计。它体积小巧(约14.3mm×24.8mm),集成了TCP/IP协议栈和32位MCU,支持802.11 b/g/n Wi-Fi标准,工作频率为2.4GHz。模块通过串口(UART)与主控设备通信,支持AT指令集,可快速实现网络连接和数据传输。其Flash容量为1MB(部分型号为2MB),内置天线,工作电压为3.3V,最大发射功率约20dBm。ESP01S常用于智能家居、远程控制、传感器数据上传等场景,优势在于低成本、低功耗和即插即用的Wi-Fi功能,但需注意其有限的GPIO(仅引出2个可用引脚)和需外部电平转换与3.3V单片机配合使用。
4.3OLED显示屏

OLED分为IIC协议与SPI协议两种,这里我们使用SPI协议的
4.4GY906红外测温

GY906 是一款基于 **MLX90614** 红外测温传感器的非接触式温度测量模块,采用 **I2C** 通信接口,可测量物体表面温度和环境温度。它利用红外热辐射原理,无需直接接触即可检测 **-70°C 至 +380°C**(不同型号范围略有差异)的温度,测量精度可达 **±0.5°C**(在人体温度范围内)。模块内置 **17-bit ADC** 和 **DSP** 数字信号处理,确保快速稳定的温度输出,适用于医疗、工业、智能家居(如非接触测温枪、恒温控制)等场景。其工作电压通常为 **3.3V~5V**,低功耗设计,但需注意测量距离(建议 **1~5cm** 最佳)和避免强光干扰以保证准确性。
4.5加湿器模块

高电平触发,简单方便使用。
4.6红外人体感应模块
