GD32F103xx 系列器件是一款基于ARM Cortex-M3 RISC內核的32位通用微控制器,在處理能力、降低功耗和外設方面具有超優的性價比。Cortex-M3是下一代處理器核心,它與嵌套矢量中斷控制器(NVIC), SysTick計時器和高級調試支持緊密耦合。
GD32F103xx系列器件采用ARM Cortex-M3 32位處理器內核,工作頻率為108 MHz,Flash訪問零等待狀態,以獲得最高效率。它提供了高達3 MB的片上閃存和高達96 KB的SRAM內存。廣泛的增強型I/O和外設連接到兩個APB總線。這些器件提供多達三個12位ADC,多達兩個12位DAC,多達十個通用16位定時器,兩個基本定時器和兩個PWM高級控制定時器,以及標準和高級通信接口:多達三個SPI,兩個I2C,三個USART,兩個UART,兩個I2S,一個USB 2.0 FS,一個CAN和一個SDIO。
該器件在工作電壓為2.6 V 至3.6 V,溫度范圍為-40°C至+85°C下工作。幾種節能模式為喚醒延遲和功耗之間的最大優化提供了靈活性,這在低功耗應用中是一個特別重要的考慮因素。
以上特點使GD32F103xx器件適用于廣泛的應用,特別是在工業控制、電機驅動、電源監控和報警系統、消費和手持設備、POS、車載GPS、視頻對講、PC外設等領域。
GD32 庫函數 輕量級封裝,直接操作寄存器,追求效率,扁平化結構,減少層級依賴。但移植成本高,兼容性差。STM32 項目遷移需重寫時鐘配置、中斷處理等。
GD32 的差異化路線
-
GD32 使用更高主頻的內核(如 Cortex-M3@108MHz vs STM32F3@72MHz),優化了流水線和閃存加速器。
-
外設寄存器地址和時序與 STM32 存在差異(如 GPIO 配置寄存器偏移量不同)。
-
獨立 SDK 框架:GD32 提供自主開發的固件庫(如 gd32fxxx_libopt.h),雖然 API 風格模仿 ST(如 gpio_init()),但內部實現和文件結構已重構。
-
規避法律風險:避免直接使用 ST 的代碼,通過重寫實現類似接口(如將 HAL_GPIO_WritePin() 改為 gpio_bit_write())。
-
性能優化:針對自身硬件調整驅動邏輯(如時鐘樹配置、延遲函數)。
“既然 GD32 和 STM32 的芯片寄存器結構幾乎一樣,是否可以在 STM32 平臺上開發,生成 hex/bin 文件,直接燒錄到 GD32 上運行量產?”
GD32芯片包下載和安裝教程
https://www.keil.arm.com/devices/
GD32F103C8T6 資源詳情
資源類型 | 參數值 | 說明 |
---|---|---|
型號 | GD32F103C8T6 | LQFP48封裝 |
內核 | Cortex?-M3 | 108MHz主頻 |
存儲 | ||
- 閃存容量 | 64K | 64KB程序存儲器 |
- SRAM容量 | 20K | 20KB運行內存 |
I/O數量 | up to 37 | 最大37個可用GPIO |
定時器 | ||
- 通用定時器(16位) | 3 | 支持PWM/輸入捕獲等 |
- 高級定時器(16位) | 1 | 帶死區控制的電機控制定時器 |
- 系統滴答定時器(24位) | 1 | 用于操作系統時基 |
通信接口 | ||
- USART/UART總數 | 3+0 | 3個USART(支持同步模式) |
- I2C接口 | 2 | 支持SMBus/PMBus |
- SPI接口 | 2 | 支持主從模式 |
- CAN 2.0B | 1 | 支持標準幀和擴展幀 |
- USB 2.0 | 1 | 全速12Mbps設備接口 |
外設 | ||
- 看門狗 | 2 | 獨立+窗口看門狗 |
- 實時時鐘(RTC) | 1 | 帶日歷和鬧鐘功能 |
- SDIO接口 | 0+AE8:AK8 | 特殊功能配置(詳見數據手冊) |
模擬資源 | ||
- 12位ADC | 2單元(10通道) | 最高1MHz采樣率 |
其他 | ||
- 工作電壓 | 2.6-3.6V | 典型3.3V供電 |
- 封裝尺寸 | 7×7mm | LQFP48引腳間距0.5mm |
- 發布日期 | 2025-06-04 | 量產時間 |
💡 關鍵特點總結:
該型號主打高性價比通信控制,亮點在于:
- 集成3×USART + 2×SPI + 2×I2C + CAN的多協議通信矩陣
- 配備10通道12位ADC滿足基礎采集需求
- 64KB Flash + 20KB SRAM適合中等復雜度應用
- LQFP48封裝節省PCB空間,適合緊湊型設計
編譯報錯
Rebuild started: Project: Project
*** Target 'GD32F10X_CL' uses ARM-Compiler 'V5.06 update 6 (build 750)' which is not available.
*** Please review the installed ARM Compiler Versions:'Manage Project Items - Folders/Extensions' to manage ARM Compiler Versions.'Options for Target - Target' to select an ARM Compiler Version for the target.
*** Rebuild aborted.
Build Time Elapsed: 00:00:00
報錯原因:
中密度產品(GD32F10X_MD) 是指 FLASH 存儲器容量在16 KB
至 128 KB
的 GD32F101xx 和 GD32F103xx 微控制器。
高密度產品(GD32F10X_HD) 是指 FLASH 存儲器容量在 256KB
至 512KB
的 GD32F101xx 和 GD32F103xx 微控制器。
超高密度產品(GD32F10X_XD)是指FLASH存儲器容量在 512KB
以上 的GD32F101xx 和 GD32F103xx 微控制器。
互聯型產品(GD32F10X_CL) 是指產品是指GD32F105xx
和 GD32F107xx
微控制器。
解決辦法:
所以 GD32F103C8T6 處于 MD 的產品,點擊 [Options of Target ]在 C/C++ 選項里面將 Define GD32F10X_CL
改為 GD32F10X_MD
。
資料下載
-
[1] GD32F103CBT6
-
[2] [兆易創新]GD32F103C8T6技術文檔