Files
sgp30test/README.md
DESKTOP-PUHFO60\dsx2016 ee2ca3edfc Align 3.5C pins with CYD_PROJECT_GUIDE: TFT_BL=27, SGP30 SDA22/SCL21.
Leave 2.8 wiring unchanged; release GT911 INT after reset so SCL21 can share CN1.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-25 10:53:33 +08:00

97 lines
3.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# CYD SGP30 空气质量仪表盘
ESP32 Cheap Yellow Display + SGP30 + LVGL 空气质量仪表盘。
默认 **2.8" ESP32-2432S028R**;可选 **3.5" ESP32-3248S035C**(`cyd_35r`)。
引脚约定见同目录 [CYD_PROJECT_GUIDE.md](../CYD_PROJECT_GUIDE.md);布局参考 [temperature](../temperature)。
## 硬件
| 项目 | 2.8" · 2432S028R | 3.5" C · 3248S035C |
|------|------------------|---------------------|
| 屏驱 | ILI9341 | ST7796 |
| 触控 | XPT2046 SoftSPI | GT911 Wire1(SDA33/SCL32/INT21/RST25) |
| 背光 TFT_BL | **GPIO21** | **GPIO27** |
| SGP30 SDA | **GPIO22** | **GPIO22** |
| SGP30 SCL | **GPIO27** | **GPIO21**(CN1;勿占 27=BL、32/33=触控) |
| 供电 | USB 5V;传感器 **3.3V** | 同左 |
接线(SGP30):`VCC→3.3V`,`GND→GND`,再按上表接 SDA/SCL。
## 功能
- 横屏网格布局:双圆弧仪表(eCO2 ppm / TVOC ppb)+ 底部左空气质量 / 右趋势图(分区不重叠)
- EMA 平滑、min/max、综合空气质量条与分级(GOOD / FAIR / POOR / BAD)
- 上电约 15s 预热提示(`WARM`);圆弧与质量条缓动动画;趋势折线 SHIFT 更新
- 短按切换背光(4 档,顶部提示);长按 ≥0.7s 重置 min/max
- 连续读失败容错(连续失败才报错)
- 常亮运行(无自动熄屏 / 休眠)
## 构建与烧录
依赖 [PlatformIO](https://platformio.org/)。
```bash
pio run -e cyd_28r -t upload # 2.8"
pio run -e cyd_35r -t upload # 3.5C
pio device monitor -b 115200
```
### 预编译固件(随时刷,不必编译)
| 板型 | 目录 |
|------|------|
| 2.8" | [`firmware/cyd_28r/`](firmware/cyd_28r/) |
| 3.5" | [`firmware/cyd_35r/`](firmware/cyd_35r/) |
```powershell
cd firmware\cyd_28r # 或 cyd_35r
.\flash.ps1
# 或 .\flash.ps1 -Port COM3
```
说明见 [`firmware/README.md`](firmware/README.md)。重新打包:
```powershell
.\firmware\export_from_build.ps1 # 2.8
.\firmware\export_from_build.ps1 -Env cyd_35r
```
### 环境选择
| 环境 | 适用 |
|------|------|
| `cyd_28r` | 标准 ILI9341 CYD(默认) |
| `cyd_28r_inv` | 颜色反相 / 发白 |
| `cyd_28_st7789` | USB-C 双口 / ST7789 变体 |
| `cyd_35r` | 3.5" ST7796 + GT911(BL=27,SGP30 SDA22/SCL21) |
## 项目结构
```
platformio.ini # 板级与库依赖
include/lv_conf.h # LVGL 配置
src/main.cpp # 仪表盘主程序
scripts/exclude_lvgl_asm.py # 排除 ESP32 不兼容的 LVGL ASM
firmware/ # 预编译固件(可离线刷写)
.cursor/rules/ # Cursor 协作规则
README.md # 本文档
```
## 变更约定
每次功能或行为改动须:
1. 更新本 README(及必要时的注释)
2. `git add` + `git commit` 提交
详见 `.cursor/rules/git-and-docs.mdc`。
## 变更记录
| 日期 | 说明 |
|------|------|
| 2026-10-25 | 按 CYD_PROJECT_GUIDE:3.5 修正 TFT_BL=27;SGP30 保持 SDA=22/SCL=21;GT911 INT 复位后改 INPUT;不动 2.8 |
| 2026-10-18 | 初版:LVGL 空气质量仪表盘 + SGP30(SDA=GPIO22 / SCL=GPIO27),eCO2/TVOC 双表盘、质量条、趋势图、背光与 min/max |
| 2026-10-18 | 初始化 Git;归档预编译固件到 `firmware/cyd_28r/`,附一键刷写脚本 |