GD32如何替换STM32?

💡 原文中文,约1800字,阅读约需5分钟。
📝

内容提要

GD32F103、GD32E103和GD32F303是具有不同核心的兼容产品。它们具有相同的引脚兼容性和寄存器地址,并且可以使用相同的开发工具。然而,在将STM32F103替换为GD32F30/E103时,需要考虑一些硬件差异和注意事项。在使用ST的标准库进行开发时,需要进行一些修改,如调整时序要求和闪存擦除/编程时间。总体而言,通过这些修改,ST的代码可以用于GD32系列。

🎯

关键要点

  • GD32F103、GD32E103和GD32F303是兼容产品,具有不同核心但相同引脚兼容性和寄存器地址。
  • 使用ST的标准库进行开发时需要进行一些修改,包括时序要求和闪存擦除/编程时间的调整。
  • 外围引脚完全兼容,芯片内部寄存器和外部IP寄存器地址相同,但某些寄存器的默认值和设计时序存在差异。
  • BOOT0必须接10K下拉或接GND,RC复位电路必须存在,仿真器连接可能存在问题。
  • GD对时序要求严格,需先打开时钟再配置外设,外部晶振起振超时时间需修改。
  • GD32F10X flash取值零等待,ST需要2个等待周期,需修改精确延时代码。
  • GD与ST在flash的Erase和Program时间上有差异,需注意flash大于256K的需求。
  • 经过以上修改,ST的代码可以在GD32系列上使用,适用于不使用USB和网络复杂协议的代码。
➡️

继续阅读