
接着上一期的 14 条往下跟,并补进 5 条材料:AT32F435 的两个新料号进上游评审、LIONBEE V1 的板级配置、iNav 侧 AT32F43x 的 SPI 分频与初始化时钟、三处 DShot bitbang DMA 修复回移到 2026.6 分支,以及 AT32 飞控在 macOS 上多行粘贴 CLI 会损坏输入;跟踪部分给出 2026.6.x 数据冻结的关闭依据。
ENABLE_BMI423_ALIGN_AS_ICM,写法照搬既有的 ENABLE_BMI270_ALIGN_AS_ICM。2diff all 与黑盒日志都没有拿到,逐行比对 2026.6.1、2026.6.2 与 4.5.5 的代码也没有找到原因。10GYRO_2_CS_PIN 那一行统一改成 PE11;报告人提出的 gyro_init 三处改动会不会进后续版本。USE_BOOTLOG。这一步在 2026-09-26 完成:PR #12040 移除了误定义的 bootlog,并在文档里补了一句提醒,合入 maintenance-10.x 分支。12USE_MAG_QMC5883L)、补上气压计/罗盘/USE_LED_STRIP/USE_GPS 的定义,并把 VTX 电源码的两只 PINIO 写清楚。system_clock_config() 把 PLL 跑到 288 MHz、APB1 与 APB2 都除以 2,每条 SPI 实际分的是 144 MHz,也就是 9/18/36 MHz;SPI4 挂在 APB2 上的慢表,速率与 SPI2、SPI3 相同。这一处只改注释,不改速率。SPI4_NSS_PIN 也没有 NONE 回退;即便编过,spiDeviceByInstance() 不认识 SPI4,spiSetSpeed() 与错误计数都不管它,总线会停在初始化时的分频上。目前没有 AT32 target 用 SPI4。SPI_CLOCK_INITIALIZATON 是 144 MHz 除以 256,562.5 kHz,而 SD 卡在识别前最多只能给 400 kHz。AT32 要拿到 281.25 kHz 得同时写 ctrl2 的 mdiv_h 与 ctrl1 的 mdiv_l,原来的代码只写了 ctrl1。DMA_CLEAR_FLAG() 的宏参数没有加括号,A | B 被解析成 A | (B << shift),只有一个标志位移到位,其余被原样写进低 6 位。对 flagsShift 为 22 的流,F4 的 DShot DMA 处理每帧都在清掉 0 号流的标志,自己该清的 FEIF/DMEIF/TEIF/HTIF 一直留着。同样的调用也出现在 SPI 驱动里,包括 AT32 用的 bus_spi_at32bsp.c。bbDMAIrqHandler() 遇到 DMA_IT_TEIF 时是 while (1) {};,而这些 target 上除 STM32N657 外没有看门狗。一次电机流上的 DMA 传输错误就足以让飞控在空中停住。现在它清标志并置 reinitRequired,由 bbUpdateComplete() 重载寄存器集后重试。091127c)。Issue #5552(2026-09-21 提出,仍开放)23vtxtable 命令;LF 与 CRLF 换行都试过,逐条键入正常。DMA_CLEAR_FLAG 修好前后 AT32 的 SPI 错误计数有没有变化。github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.