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
…
…

CYD SGP30 空气质量仪表盘

ESP32 Cheap Yellow Display + SGP30 + LVGL 空气质量仪表盘。

默认 2.8" ESP32-2432S028R;可选 3.5" ESP32-3248S035C(cyd_35r)。
引脚约定见同目录 CYD_PROJECT_GUIDE.md;布局参考 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。

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/
3.5" firmware/cyd_35r/
cd firmware\cyd_28r   # 或 cyd_35r
.\flash.ps1
# 或 .\flash.ps1 -Port COM3

说明见 firmware/README.md。重新打包:

.\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/,附一键刷写脚本
Description
CYD project: sgp30test
Readme 774 KiB
Languages
C++ 62.7%
PowerShell 16.5%
HTML 14.3%
C 4.8%
Python 1.1%
Other 0.6%