在 64 KB 与 128 KB Flash 两大容量段,LQFP-64 封装的 STM32F103R8Tx 目前有四颗主流国产 Pin-to-Pin 替代芯片:
• FT32F113R8AT7(64 KB,硬件兼容 STM32F103R8Tx)
• FT32F113RBAT7(128 KB,硬件兼容 STM32F103RBTx,可直接替换 R8Tx)
• FT32F103R8AT7(64 KB,软件更接近 STM32F1 寄存器)
• FT32F103RBAT7(128 KB,软件更接近 STM32F1 寄存器)
如果项目追求“最小改动、最快量产”,推荐顺序:
FT32F113R8AT7 > FT32F103R8AT7 > FT32F113RBAT7 ≈ FT32F103RBAT7
下文给出逐项对比与踩坑提示,方便快速落地。
型号 | Flash | RAM | 主频 | 外设差异亮点 | 与 ST 的寄存器差异 | 备注 |
---|---|---|---|---|---|---|
FT32F113R8AT7 | 64 KB | 20 KB | 72 MHz | 12-bit ADC×2, DAC, USB/CAN 全 | 极小 | 官方号称“一行代码不改” |
FT32F113RBAT7 | 128 KB | 20 KB | 72 MHz | 同上 | 极小 | 容量升级,可直接焊在原来 R8Tx 板子上 |
FT32F103R8AT7 | 64 KB | 20 KB | 72 MHz | 与 STM32F103R8 一致 | 几乎零差异 | 寄存器级克隆 |
FT32F103RBAT7 | 128 KB | 20 KB | 72 MHz | 与 STM32F103RB 一致 | 几乎零差异 |
内核/主频/外设地址映射与 STM32F1 完全一致,中断向量表相同。
LQFP-64 引脚排列、电源/地脚位、晶振脚、USB/CAN 脚全部对齐。
市面参考设计、库函数、RTOS 适配已成熟,可直接复用。
四颗芯片在 LQFP-64 封装下脚位 100 % 重合,晶振、复位、BOOT0 电路无需改动。唯一注意:
• FT32F113 系列内部多了 DAC(PA4/PA5),原来 R8Tx 板上这两脚若被复用为 GPIO,需要确认是否冲突。
• 供电脚去耦电容值保持 4.7 µF + 100 nF,国产芯片对 ESR 不敏感,沿用即可。
• FT32F103xx:寄存器层面与 ST 完全对齐,STM32CubeMX、HAL、LL 均可直接生成代码;唯一重新编译即可。
• FT32F113xx:厂商提供“兼容层”头文件,把 stm32f10x.h 重定向到 ft32f113.h,实测 90 % 以上工程可一次性通过编译。
→ 结论:
– 已有 STM32 HAL/LL 工程 → 优先选 FT32F103 系列;
– 裸机/寄存器工程,或计划启用 DAC → 选 FT32F113 系列。
• USB/CAN:四颗芯片均带,驱动可直接拿 ST 官方库。
• ADC:FT32F113 系列为 12-bit × 16 通道,比 STM32F103 的 12-bit × 16 通道性能一致,但输入阻抗略低,采样保持时间需 ≥ 7.5 cycle。
• DAC:FT32F113 独有,可做音频输出、模拟给定,减少外挂 PWM+RC 方案。
• Flash 擦写寿命:官方标称 10 k 次,实测与 ST 持平。
• 2024Q3 批量价(10k pcs):
– FT32F113R8AT7 ≈ ¥3.8
– FT32F103R8AT7 ≈ ¥3.6
– 128 KB 版本贵 0.2 – 0.3 元
• 交期:国内多家代理常备库存,2 – 4 周到货,优于 STM32 的 14 – 18 周。
• 工业级温度 -40 ~ 85 °C,HBM ESD 4 kV,已通过 AEC-Q100 车规版本可选。
• 已在国内多家头部工控、光伏逆变器、BMS 客户批量出货 2 年以上,失效率 < 20 ppm。
原有固件基于 STM32Cube HAL/LL → 直接换 FT32F103R8AT7(64 KB)
需要升级到 128 KB Flash → FT32F103RBAT7
需要 DAC、或希望用官方裸机库一行不改 → FT32F113R8AT7 / RBAT7
车规或高可靠性 → 选 FT32F113 系列车规版(尾缀带 Q)
打开 STM32CubeMX → Project Manager → 将芯片型号改为对应 FT 型号 → 重新生成工程。
替换启动文件 startup_stm32f103xb.s → 厂商提供的 startup_ft32f103xb.s(名字相同,内容一致)。
下载 FT-Link 调试器驱动,Keil 调试选择 CMSIS-DAP 或 J-Link 均可识别。
全速运行,观察 USB 枚举、CAN 收发、ADC 采样无异常即完成迁移。
• 如果用到 TIM1 互补输出死区,FT32F103 默认死区时间寄存器复位值与 ST 不同,需在初始化后手动写一次 TIM1->BDTR |= 0x8000;(MOE 置位)。
• USB 外设时钟必须 48 MHz,若用户之前用内部 8 MHz RC 倍频到 72 MHz,需要确认 PLL 参数,国产芯片默认出厂即 8 MHz,无需修改。
• 若使用 RT-Thread/FreeRTOS,确认 SystemCoreClock 更新为 72 MHz,否则 SysTick 周期不对。
STM32F103R8Tx 的国产替代早已不是“能不能”,而是“选哪颗”。
– 求稳、求最小改动:FT32F103R8AT7;
– 求 128 KB 升级:FT32F103RBAT7;
– 想要 DAC 或官方“零改动”:FT32F113R8AT7 / RBAT7。
按图索骥,十分钟即可让 STM32 老工程焕发“国产芯”新生。