SuperAPI AI 工具集

esp32-freertos

编程与开发

查看项目

更新于 10-15 21:48

技能介绍

用途:处理 ESP-IDF 自带的 IDF FreeRTOS 并发问题,而非上游原版 FreeRTOS。覆盖并发结构设计(任务划分、队列/信号量/定时器选型)、栈与优先级调参、双核/SMP 绑核与核间竞争。崩溃现场(panic/backtrace/coredump)移交 esp32-debug,驱动与 ISR 引脚层并发移交 esp32-peripherals,工程骨架与烧写移交 esp32-idf,低功耗移交 esp32-lowpower,上板实测移交 fw-hil-testing。

主要能力与用法:先做 Preflight 核验,运行 idf.py --version,并用 grep -E "CONFIG_FREERTOS_(UNICORE|MAX_PRIORITIES)" sdkconfig 与 grep -nE "xTaskCreate|PinnedToCore|xQueue|Semaphore|portMUX" main/*.c 确认单/双核、实际优先级上限与现存任务参数。设计上按“事件源→处理→输出”划分任务,队列传数据副本,互斥用互斥量、计数用信号量、单次事件用二值信号量,ISR 只调 *FromISR 变体。栈与优先级方面,IDF 栈单位是字节(4096=4KB),优先级有效范围 0 到 CONFIG_FREERTOS_MAX_PRIORITIES-1(默认 25,以 sdkconfig 为准)。绑核先明确原因再落 xTaskCreatePinnedToCore(),SMP 目标为 ESP32、ESP32-S3、ESP32-P4、ESP32-H4(Core 0=PRO_CPU,Core 1=APP_CPU),S2/C3 等为单核。

限制:事实基线为 2026-09-02 走读的 IDF FreeRTOS,不自动更新;栈大小、优先级、队列长度属项目决策,不得编造官方推荐值;改并发参数每次只改一个维度并保留复现手段;无日志或测量证据不得声称稳定。该技能只分析本地代码与配置,不采集或外发用户数据与凭据。