STM32项目分享:STM32智能窗户

目录

一、前言

二、项目简介

1.功能详解

2.主要器件

三、原理图设计

四、PCB硬件设计

PCB图

五、程序设计

六、实验效果

七、资料内容

项目分享


一、前言

项目成品图片:

哔哩哔哩视频链接:

STM32智能窗户

(资料分享见文末)

二、项目简介

1.功能详解

基于STM32智能窗户

功能如下:

  1. 基于STM32F103C8T6最小系统板
  2. MQ135传感器检测空气质量
  3. DHT11检测环境温湿度情况
  4. 光电红外传感器检测是否有人闯入
  5. 雨量传感器检测是否下雨
  6. 所有检测信息显示在OLED显示屏上
  7. 自动模式下定时开关窗帘,并根据外界情况判断是否关窗
  8. 手动模式可手动按键控制窗帘开关
  9. 按键可设置时间与各参数阈值
  10. 可连接蓝牙APP远程查看信息与控制下发

2.主要器件

  • STM32F103C8T6单片机
  • OLED 屏幕
  • DHT11温湿度传感器
  • MQ135空气质量传感器
  • 光电红外传感器
  • 雨量传感器
  • 步进电机
  • 有源蜂鸣器
  • LED灯
  • BT04A蓝牙模块

三、原理图设计

四、PCB硬件设计

PCB图

五、程序设计

cpp 复制代码
#include "sys.h"
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
#include "math.h"
#include "delay.h"
#include "gpio.h"
#include "key.h"
#include "oled.h"
#include "usart.h"
#include "adc.h"
#include "dht11.h"
#include "motor_bujin.h"
#include "rtc.h"


/****
*******	主函数 
*****/
int main(void)
{
  NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //配置中断优先分组
	Delay_Init();	    	 								//延时初始化	  
	Gpio_Init();		  									//IO初始化
	Key_Init();		  										//按键初始化
	Oled_Init();		  									//OLED初始化
	Oled_Clear_All();										//清屏
	Usart1_Init(9600);    							//串口1初始化
	Adc_Init();													//ADC初始化
	while(RTC_Init());									//RTC初始化
	Step_Motor_Init();									//步进电机初始化
	while(DHT11_Init());								//DHT11初始化

	
	while(1)
	{
		Key_function();										//按键函数
		Monitor_function();								//监测函数
		Display_function();								//显示函数
		Manage_function();								//处理函数

		time_num++;												//计时变量+1
		Delay_ms(10);
		if(time_num %10 == 0)
			LED_SYS = ~LED_SYS;
		if(time_num >= 5000)
		{
			time_num = 0;
		}
	}
}

六、实验效果

七、资料内容

项目分享

相关推荐
流浪_彩虹21 小时前
MCU/DSP 与 ROS2 如何通信?XRCE-DDS 实现 rostopic 与嵌入式 Msg 无缝映射(附架构图)
单片机·嵌入式硬件
DLGXY1 天前
STM32(二十八)——FLASH闪存
stm32·单片机·嵌入式硬件
9稳1 天前
基于plc的自动化立体仓库控制系统设计
开发语言·网络·数据库·嵌入式硬件·plc
ToneChip1 天前
USBi 调试 与 MCU 运行 共存方案总结
单片机·嵌入式硬件·音频
学嵌入式的小杨同学1 天前
STM32 进阶封神之路(二十一):DMA 深度解析 —— 从直接内存访问到无 CPU 干预数据传输(底层原理 + 寄存器配置)
stm32·单片机·嵌入式硬件·mcu·硬件架构·硬件工程·智能硬件
Hello World . .1 天前
51单片机基础
单片机·嵌入式硬件·51单片机
’长谷深风‘1 天前
51单片机入门(3:串口通信)
单片机·嵌入式硬件·51单片机·串口·串口通信
9稳1 天前
基于智能巡检机器人与PLC系统联动控制设计
开发语言·网络·数据库·嵌入式硬件·plc
BackCatK Chen1 天前
STM32U3B5/3C5深度解析:HSP加速器赋能边缘AI与DSP,超低功耗新标杆
人工智能·stm32·嵌入式硬件
_Ningye1 天前
STM32 — 2.2 新建工程
stm32·单片机·嵌入式硬件