使用STM32的芯片的朋友,可以很方便的將移植到GD32上面,下面就具體移植過程分享一下:
整個移植過程可以分為硬件和軟件兩個方面。
硬件方面:
首先要確定先前所使用ST芯片的flash大小和管腳數(shù)量,然后替換成GD相同大小Flash和管腳數(shù)量的芯片。
簡單來說就是STM32F103xxxx替換成GD32F103xxxx。
GD和ST的命名規(guī)則相同。
軟件方面:
以Keil開發(fā)環(huán)境為例,打開頭文件“stm32f10x.h”
找到定義
#define HSE_STARTUP_TIMEOUT ((uint16_t)0x0500)
替換為
#define HSE_STARTUP_TIMEOUT ((uint16_t)0xFFFF)
重新編譯一下即可。
如果使用的是IAR開發(fā)環(huán)境,可以參考下面的文檔說明中的方法修改。
需要注意的地方:
硬件方面,硬件不需要做任何改動,ST的芯片對32.768K的晶振要求是6pF負載的,這個價格比較高,而且不太好買,GD的芯片則沒有這個要求??梢苑奖悴少彾夷苓M一步降低成本。
軟件方面,由于GD獨有的技術(shù),是芯片執(zhí)行速度提高,因此如果用軟件上的for循環(huán)或while循環(huán)做精確定時的,定時時間會由于代碼執(zhí)行速度加快而使循環(huán)的時間變短。