📘 ESP32 智能灯控
全栈开发 · 30章
⚡
从硬件到App · 友好色系
01
ESP32与智能灯控概述
ESP32芯片介绍
智能灯控系统架构
开发环境搭建
硬件清单
02
GPIO基础与LED控制
GPIO工作原理
数字输出控制
点亮第一个LED
PWM调光
呼吸灯实现
03
按键输入与中断
GPIO输入模式
按键消抖
外部中断配置
中断服务函数
04
定时器与PWM深入
硬件定时器配置
PWM频率/占空比
多通道PWM输出
RGB LED调色
05
ADC与传感器
ADC工作原理
ESP32 ADC特性
光敏电阻
DHT11/DHT22驱动
06
UART串口通信
UART协议基础
ESP32串口配置
PC串口调试
传感器模块通信
07
I2C总线通信
I2C协议详解
ESP32 I2C主模式
驱动OLED显示屏
I2C传感器驱动
08
SPI总线通信
SPI协议基础
ESP32 SPI配置
驱动SD卡模块
SPI接口显示屏
09
Wi-Fi基础与Station模式
Wi-Fi协议简介
Station模式配置
连接路由器
获取IP地址
10
Wi-Fi AP模式与网络创建
AP模式配置
创建Wi-Fi热点
DNS与DHCP服务
手机直连ESP32
11
TCP/IP协议与Socket编程
TCP/UDP对比
Socket API介绍
ESP32 TCP客户端
TCP服务器
12
HTTP协议与Web服务器
HTTP协议基础
搭建Web服务器
浏览器控制LED
RESTful API设计
13
WebSocket实时通信
WebSocket协议原理
ESP32 WebSocket服务器
双向实时控制
状态同步
14
MQTT协议入门
MQTT特点
发布/订阅模型
Broker搭建
ESP32 MQTT客户端
15
MQTT高级应用
QoS等级
遗嘱/保留消息
SSL/TLS加密
Home Assistant集成
16
蓝牙BLE基础
BLE协议栈架构
GATT与GAP
ESP32 BLE Server
广播与扫描响应
17
BLE客户端开发
BLE Client配置
扫描与连接
读写特征值
BLE OTA升级
18
手机App开发环境搭建
Flutter框架介绍
Dart语言基础
Android Studio/Xcode
第一个Flutter项目
19
Flutter UI基础
Widget树
Stateless/Stateful
布局组件
页面路由
20
Flutter网络编程
http库使用
JSON解析
WebSocket客户端
MQTT客户端
21
App蓝牙功能开发
flutter_blue_plus
扫描BLE设备
连接与通信
特征值读写
22
App UI设计
灯控界面设计
色环选择器
亮度滑动条
场景模式切换
23
本地数据存储
SharedPreferences
SQLite数据库
文件存储
配置持久化
24
云平台接入(阿里云IoT)
阿里云IoT配置
设备注册与三元组
MQTT连接阿里云
属性上报/服务调用
25
云平台接入(AWS IoT)
AWS IoT Core配置
证书认证
设备影子
规则引擎+Lambda
26
OTA远程升级
ESP32 OTA机制
HTTP OTA
阿里云OTA
App触发升级
27
低功耗设计
睡眠模式
定时/外部唤醒
功耗测量
优化策略
28
传感器融合与自动化
多传感器融合
光线+人体感应
定时任务
离家/回家模式
29
安全与稳定性
Wi-Fi重连机制
MQTT重连
看门狗定时器
日志与异常处理
30
项目总结与发布
完整系统联调
硬件PCB设计
App打包发布
开源社区贡献