这个仓库不是原版说明文档,而是当前这套自定义硬件的适配说明。
适配目标硬件:
ESP32-S3 N16R8ST7789 240x320 SPI屏幕AO四键 AD 按键模块PN532RFID 模块CC1101SubGHz 模块VS1838B红外接收头- 红外发射管
SCK = GPIO12MOSI = GPIO11CS = GPIO10DC = GPIO14RST = GPIO15BL = GPIO16
AO = GPIO1K1 -> LEFTK2 -> RIGHTK3 -> OKK4 -> DOWN
SDA = GPIO8SCL = GPIO18
CSN = GPIO9SCK = GPIO12MOSI = GPIO11MISO = GPIO13GDO0 = GPIO4
IR TX = GPIO2IR RX = GPIO5
为 ESP32-S3 N16R8 + 外接 ST7789 增加了专用板型配置:
DEVICE_S3DEVKIT_ST7789- 屏幕参数和引脚宏写入
platformio.ini
新增文件:
src/Views/S3DevKitSt7789DeviceView.hsrc/Views/S3DevKitSt7789DeviceView.cpp
作用:
- 外接屏启动显示
- 模式页面显示
- 波形和瀑布图显示
- 避免重复初始化导致的屏幕异常
新增文件:
src/Inputs/S3DevKitAdInput.hsrc/Inputs/S3DevKitAdInput.cpp
作用:
- 使用
GPIO1读取 AD 按键模块 - 适配
LEFT / RIGHT / OK / DOWN - 为当前四键模块加入 ADC 阈值
修改了带屏设备的配置和输入路径,保证当前硬件可以直接使用屏幕和按键:
src/main.cppsrc/Config/TerminalTypeConfigurator.cppsrc/Config/WifiTypeConfigurator.cppsrc/Vendors/TdisplayWifiSetup.cppsrc/Vendors/TdisplayWifiSetup.h
作用:
- 支持屏幕上的终端类型选择
- 支持按键操作 Wi-Fi 选择界面
- 修复 Wi-Fi 界面旋转方向
- 将界面提示文字改成适配
K1-K4
修改文件:
src/Controllers/SubGhzController.cppsrc/Controllers/SubGhzController.hsrc/Services/SubGhzService.cppsrc/Services/SubGhzService.hsrc/Views/NoScreenDeviceView.cppsrc/Views/NoScreenDeviceView.hlib/SmartRC-CC1101-Driver-Lib/ELECHOUSE_CC1101_SRC_DRV.cpp
作用:
- 修复进入
SUBGHZ后配置引脚时卡死 - 去掉重复配置流程
- 保留并修正
provided SPI instance用法 - 修复
ESP32-S3上CC1101的 SPI / Reset 初始化问题
修改文件:
webflasher/manifests/s3devkitn16r8.json
作用:
- 指向当前 fork 的自定义 merged 固件
- 用于本地网页刷机
docs 目录保存的是这套硬件相关的资料和参考文件。
ESP32-S3 N16R8开发板实物图ESP32-S3datasheet- 开发板原理图
ST7789屏幕实物图- 屏幕规格书
- 屏幕驱动相关参考资料
- 原厂附带的参考代码
CC1101模块实物图- 引脚定义和模块资料图
PN532模块实物图- 模块接口资料图
- 锂电池充放电模块实物图
- 供电接线参考图
当前使用环境:
platformioenvironment:s3-devkit-n16-r8
- 这份 fork 说明只描述当前这套硬件适配
- 使用方法、接线和调试步骤见根目录 userguide.pdf
