本帖最后由 tennis 于 2013-6-18 10:48 编辑
使用STM32的芯片的朋友,可以很方便的将移植到GD32上面,下面就具体移植过程分享一下:
整个移植过程可以分为硬件和软件两个方面。
硬件方面:
首先要确定先前所使用ST芯片的flash大小和管脚数量,然后替换成GD相同大小Flash和管脚数量的芯片。
简单来说就是STM32F103xxxx替换成GD32F103xxxx。
GD和ST的命名规则相同。
软件方面:
以Keil开发环境为例,打开头文件“stm32f10x.h”
找到定义
#define HSE_STARTUP_TIMEOUT ((uint16_t)0x0500)
替换为
#define HSE_STARTUP_TIMEOUT ((uint16_t)0xFFFF)
重新编译一下即可。
如果使用的是IAR开发环境,可以参考下面的文档说明中的方法修改。
需要注意的地方:
硬件方面,硬件不需要做任何改动,ST的芯片对32.768K的晶振要求是6pF负载的,这个价格比较高,而且不太好买,GD的芯片则没有这个要求。可以方便采购而且能进一步降低成本。
软件方面,由于GD独有的技术,是芯片执行速度提高,因此如果用软件上的for循环或while循环做精确定时的,定时时间会由于代码执行速度加快而使循环的时间变短。
下载方面请按照 https://bbs.21ic.com/icview-563473-1-1.html 帖子里面的
GD32F103xx - AN001 Software Migration Guide.pdf
(532.58 KB)
文档说明配合
GD32F103xx IDE Config V1.2.rar
(62.71 KB)
修改Jlink的编程算法。
欢迎大家跟贴讨论或者补充。
|