当前位置: 首页 > news >正文

009、STM32单片机分享:智能窗帘系统

目录

一、项目成品图片

二、项目功能简介

1.主要器件组成

2.功能详解介绍

三、项目原理图设计

四、项目PCB硬件设计

项目PCB图

五、项目程序设计

六、项目实验效果 ​编辑

七、项目包含内容

一、项目成品图片

哔哩哔哩视频链接:

https://www.bilibili.com/video/BV11bx5e6Edx/?spm_id_from=333.1387.upload.video_card.click

资料分享看文章末尾

二、项目功能简介

1.主要器件组成

本设计由STM32F103C8T6单片机+WIFI模块ESP8266-01S电路+TFT屏幕电路+DHT11温湿度传感器电路+光敏传感器电路+雨滴传感器电路+ULN2003步进电机电路+蜂鸣器电路+按键电路+电源电路组成。

2.功能详解

(1)环境采集:DHT11温湿度传感器采集温度和湿度、光敏传感器检测光照强度、雨滴传感器检测下雨情况。
(2)屏幕显示:TFT屏幕显示当前温度、湿度、光照强度、是否下雨状态、窗户状态等信息
(3)阈值设置:可通过app设置温度、湿度、光照阈值
(4)温度报警:温度大于设置的阈值时声光报警
(5)湿度报警:湿度大于设置的阈值时声光报警
(6)模式切换:可以设置手动模式和自动模式
(7)手动模式:手动模式下通过按键控制窗帘开关
(8)自动模式:当检测到光照强度过高并且不下雨时开启窗帘,反之关闭窗帘
(9)远程控制:通过WIFI连接手机APP,APP可以查看当前环境信息数据,可调节阈值范围

三、项目原理图设计

四、项目PCB硬件设计

五、项目程序设计

#include "stm32f10x.h" #include "delay.h" #include "usart.h" #include "USART2/usart2.h" #include "GPIO/gpio.h" #include "adc.h" #include "TFT.h" #include "timer.h" /****************破晓电子工作室******************* *** 破晓单片机 *** 项目:STM32智能窗帘系统 *** BILIBILI:破晓单片机 *** 小红书:破晓单片机 *** 授权IP:破晓单片机 *** 淘宝:破晓单片机 *** 淘宝:破晓电子 *** 版本:V01.01 *** MCU:STM32F103C8T6 ******************破晓单片机***********************/ //显示界面 CaiDanJieGouTi KeyTab[SIZE_CAIDAN]= { {0 ,0 ,0 ,0 ,0 ,Main_Menu0}, {1 ,1 ,1 ,1 ,1 ,Main_Menu1}, {2 ,2 ,2 ,2 ,2 ,Main_Menu2}, {3 ,3 ,3 ,3 ,3 ,Main_Menu3}, {4 ,4 ,4 ,4 ,4 ,Main_Menu4}, {5 ,5 ,5 ,5 ,5 ,Main_Menu5}, {6 ,6 ,6 ,6 ,6 ,Main_Menu6}, {7 ,7 ,7 ,7 ,7 ,Main_Menu7}, {8 ,8 ,8 ,8 ,8 ,Main_Menu8}, } ; //传感器变量声明 typedef struct { uint16_t adcx; uint16_t temp; uint16_t humi; uint16_t ligh; uint16_t xiayu; }SensorModulesValue; typedef struct { uint16_t tempyz; uint16_t humiyz; uint16_t lighyz; }SensorThresholdValue; typedef struct { uint8_t chuanghu; }DriveFlag; int main(void) { delay_init(); TIM3_Int_Init(9,7199);//定时器初始化 TFT_Init(); //TFT_Init初始化 TFT_Clear(BLACK); TFT_PutString(10,10,"Init......",RED,BLACK); DHT11_Init(); //DHT11初始化 key_Init(); //按键初始化 Adc_Init(); //adc初始化 delay_ms(100); uart1_init(9600); delay_ms(100); uart2_init(9600); delay_ms(100); uart3_init(9600);//串口初始化 delay_ms(100); //WIFI初始化 delay_ms(100); memset((uint8_t *)&currentDataPoint, 0, sizeof(dataPoint_t)); gizwitsInit(); while(1) { //获取按键值 key_scan(); //进入菜单界面显示处理数据 GetKeylnput(&Keystatus); //获取传感器数据 SensorDataGet(); //数据上传 currentDataPoint.valueTemp=TEMP; currentDataPoint.valueHumi=HUMI; currentDataPoint.valueLigh=ligh; currentDataPoint.valueChuanglian=chuanghu_Flag; gizwitsHandle((dataPoint_t *)&currentDataPoint); delay_ms(100); } }

六、项目实验效果 ​编辑

七、项目包含内容

​​

http://www.rkmt.cn/news/1460093.html

相关文章:

  • 树莓派GPIO控制实战:打造实体MP3播放器
  • 基于树莓派与OpenCV的红外视觉魔杖交互系统:从手势识别到物理控制
  • 基于NE555与CD4026的纯硬件随机数生成器设计与实现
  • LLM的上下文长度(Context Length):从4K到1M,真的越长越好吗?
  • Python实战:量化评估大语言模型的偏见、毒性与真实性
  • Qwen3.6 Plus深度评测:面向工程师的代码生成与中文理解实战指南
  • 镭神C32雷达+KVH 1750 IMU标定实战:从驱动读取到lidar_align避坑全记录
  • 黄仁勋封迈威尔为下一家万亿企业,它凭啥?AI互联和定制芯片市场潜力巨大!
  • DIY蓝牙音频放大器:基于PAM8403与蓝牙模块的极简方案
  • 合江县26年最新专业手表包包回收权威店铺推荐,TOP排行榜 - 莘州文化
  • GLM-5 Pro实战指南:Agent执行引擎的选型、部署与架构优化
  • 黑水县26年最新专业手表包包回收权威店铺推荐,TOP排行榜 - 莘州文化
  • DeepSeek LeetCode 2968. 执行操作使频率分数最大 TypeScript实现
  • 数据库---JDBC
  • DS4Windows:让你的PlayStation手柄在Windows上完美运行
  • 终极Sunshine游戏串流指南:三分钟实现跨设备畅玩
  • GPT-5.5服务化与具身智能理赔:AI责任锚定落地实践
  • HoRain云--Codex 权限设置
  • 双非本科生也能抓住大模型红利期?收藏这份Agent开发实战指南!
  • 2026呼和浩特正规金银回收门店精选榜单|黄金铂金彩金白银回收靠谱商家电话汇总 - 余生黄金回收
  • Siri等了15年,终于要像个人了:WWDC 2026五天倒计时全预测
  • AI工具链×智能标签协同落地:3步实现标签准确率从68%跃升至92.7%(附企业级评估矩阵)
  • 广州黄金回收榜单:盘点口碑最好的几家店,附地址全收录指南 - 奢侈品回收评测
  • 如何用XUnity.AutoTranslator打破游戏语言壁垒:5个实用技巧让你畅玩全球游戏
  • 从零打造可编程LED灯带:Arduino与WS2812B实战指南
  • 【2024最严合规落地手册】:AI工具接入智能问答必须通过的6项GDPR+等保2.0交叉审计项
  • MySQL 查询性能核武器
  • 抖音批量下载神器:告别手动保存,轻松获取无水印视频
  • 太原市尖草坪区致尚家具维修:太原窗帘定制公司 - LYL仔仔
  • STM32H743VIT6最小系统板AD工程包:原理图+PCB+封装库全开源