用途:决定 ESP32 工程中“用哪个外设、哪个驱动接口、接到哪个引脚”,覆盖 GPIO、I2C、SPI、UART、ADC、PWM(LEDC)、RMT 的选型与接线。
主要能力:提供外设决策表(何时用哪个外设及 v6.x 驱动方向);接线与引脚分配流程(Workflow 1);总线调不通的排障流程(Workflow 2,先电气后代码);并发与崩溃问题移交给 esp32-freertos、esp32-debug 等技能。
必要用法:先做 Preflight 运行时核验,例如 idf.py --version、grep -rn "#include "driver/" main/、grep -m1 "CONFIG_IDF_TARGET" sdkconfig,确认 IDF 版本与芯片 target 后再谈引脚。引脚号须显式写入驱动初始化配置或 menuconfig,不得留空猜测。
硬件契约(红线):引脚编号与复用、Strapping 引脚默认值、内部上拉能力、I2C 从机地址、SPI mode、UART 波特率与电平均以芯片 datasheet、技术参考手册或板原理图为准;不确定即停,禁止给“常见值”。
限制:legacy 驱动在 v6.0 已移除(点名 ADC、I2S、Timer 等),v6.x 工程不应继续使用;除 driver/i2c_master.h(esp_driver_i2c 组件)外,其余外设头文件名需运行时核验,本文不凭记忆补全。验证以 idf.py build 通过、引脚清单与 datasheet/原理图逐条对上、总线通信有器件应答或波形证据为准;无硬件证据时标注 Build Verification Only。本技能不采集或外发用户数据与器件凭据。