# 基于STM32Hal库+FreeRTOS+机智云平台的智能家居系统 **Repository Path**: firegod01cn/STM32HALProject ## Basic Information - **Project Name**: 基于STM32Hal库+FreeRTOS+机智云平台的智能家居系统 - **Description**: 这个一个基于STM32Hal库+FreeRTOS+机智云平台,同时包含LED,按钮,OLED显示屏,电机,舵机,光敏传感器的的智能家居系统 - **Primary Language**: C - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2024-12-27 - **Last Updated**: 2024-12-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 基于STM32Hal库+FreeRTOS+机智云平台的智能家居系统 ##介绍 这个一个基于STM32F103c8t6Hal库+FreeRTOS+机智云平台,同时包含LED,按钮,OLED显示屏,电机,舵机,光敏传感器的的智能家居系统 ## 软件架构 + MCU:STM32F103c8t6 ## 硬件元件 + LED + 按钮 + 光敏电阻传感器 + TB6612电机驱动+电机 + 0.96寸OLED显示屏 + SG90舵机 + DHT11温湿度传感器 + ESP8266WiFi模块 ## 元件交互逻辑 + 当光敏电阻传感器获取关照强度超过某一阈值时,自动打开LED灯,同时关闭窗帘(利用舵机进行模拟),当低于某一阈值时。关闭LED灯,同时打开窗帘。(OLED显示光照值) + 当温度或湿度高于某一阈值时,自动打开风扇(电机),低于阈值时,关闭风扇。(OLED显示温湿度值) + 按钮可以自由控制LED灯亮灭 + 利用WiFi模块将光照值,温度,湿度值,LED状态,电机状态,窗帘状态发送至上位机 ## MCU内部外设 + UART2(WiFi模块) + A2(TX),A3(RX) + USART1(打印Debug信息) + A9(TX),A10(RX) + TIM3_CH1(PWM驱动电机) + A6(TIM3_CH1) + IN1(A4) + IN2(A5) + TIM3_CH2(PWM驱动舵机) + B6(TIM4_CH1) + ADC1_IN9(光敏传感器AD转换) + B1 + DHT11温湿度传感器(单总线) + B12 + OLED(软件I2C) + B8(SCL) + B9(SDA) + LED(低电平亮) + B14 + 按钮 + B11(上拉输入) ## FreeRTOS任务接口 ### 任务定义 + 光敏电阻传感器任务 + 利用消息队列传输光照值(长度为1) + 根据光照值对LED状态消息队列进行赋值 + 根据光照值对舵机进行控制 + 温湿度传感器任务 + 利用消息队列传输温度和湿度(长度为2) + 创建温度,湿度消息队列 + 根据获取的温湿度值对风扇(电机)进行控制 + 创建电机状态消息队列 + 按钮控制LED任务 + 利用消息队列保存LED状态 + WiFI模块数据上报和获取任务(队列集) + 取出消息队列数据进行上报 + 响应上位机控制