受疫情及其它多種因素的影響,導致世界各大MCU廠家芯片價格不斷上漲,特別是STM32部分型號的價格已經翻幾倍了。
然後,有很多公司開始了尋找其他廠家MCU代替STM32的方案,在國內最有效替代STM32的非GD32莫屬了。
想要最有效替代,就需要了解他們之間的差異,下面簡單描述一下STM32F1 和 GD32F1系列芯片的一些差異。
嵌入式專欄
1
GD32簡介
在描述差異之前,我們簡單介紹一下GD32,以及這家公司相關的內容。
GD32屬於北京兆易創新科技股份有限公司(簡稱兆易創新)開發的一款(系列)MCU。
兆易創新成立於2005,在2013年正式推出了第一款Cortex-M內核的MUC(GD32F1)。
據說開發的人員是來自ST公司的,GD32也是以STM32爲模板做出來的。所以GD32和STM32有很多地方都是一樣的,有些型號MCU可以做到無縫替換。
不過GD32畢竟是不同的產品,不可能所有東西都沿用STM32,有些自主開發的東西還是有區別的。相同的地方我們就不說了,下面我給大家講一下STM32F1 和 GD32F1系列芯片不同的地方。
嵌入式專欄
2
內核區別
GD32採用二代的M3內核,STM32主要採用一代M3內核,下圖是ARM公司的M3內核勘誤表,GD使用的內核只有752419這一個BUG。
嵌入式專欄
3
主頻區別
使用HSE(高速外部時鐘):GD32的主頻最大108M,STM32的主頻最大72M。
使用HSI(高速內部時鐘):GD32的主頻最大108M,STM32的主頻最大64M
主頻大意味着單片機代碼運行的速度會更快,項目中如果需要進行刷屏,各種開方運算,電機控制等操作,GD32是一個不錯的選擇。
嵌入式專欄
4
供電區別
外部供電:GD32外部供電範圍是2.6 ~ 3.6V,STM32外部供電範圍是2 ~ 3.6V,GD的供電範圍比STM32相對要窄一點。
內核電壓:GD32內核電壓是1.2V,STM32內核電壓是1.8V。GD的內核電壓比STM32的內核電壓要低,所以GD的芯片在運行的時候運行功耗更低。
嵌入式專欄
5
供電區別
GD32的Flash是自主研發的,和STM32的不一樣。
GD Flash執行速度:GD32 Flash中程序執行爲0等待週期。
STM32 Flash執行速度:ST系統頻率不訪問flash等待時間關係:0等待週期,當0<SYSCLK<24MHz,1等待週期,當24MHz<SYSCLK≤48MHz,2等待週期,當48MHz<SYSCLK≤72MHz。
Flash擦除時間:GD擦除的時間要久一點,官方給出的數據是這樣的:GD32F103/101系列Flash 128KB 及以下的型號, Page Erase 典型值100ms, 實際測量60ms 左右。對應的ST 產品Page Erase 典型值 20~40ms。
嵌入式專欄
6
功耗區別
從下面的表可以看出GD的產品在相同主頻情況下,GD的運行功耗比STM32小,但是在相同的設置下GD的停機模式、待機模式、睡眠模式比STM32還是要高的。
嵌入式專欄
7
串口區別
GD在連續發送數據的時候每兩個字節之間會有一個Bit的Idle,而STM32沒有,如下圖:
嵌入式專欄
8
ADC區別
GD的輸入阻抗和採樣時間的設置和ST有一定差異,相同配置GD採樣的輸入阻抗相對來說要小。具體情況見下表這是跑在72M的主頻下,ADC的採樣時鐘爲14M的輸入阻抗和採樣週期的關係:
嵌入式專欄
9
FSMC區別
STM32只有100Pin以上的大容量(256K及以上)纔有FSMC,GD32所有的100Pin或100Pin以上的都有FSMC。
嵌入式專欄
10
RAM&FLASH大小FSMC區別
GD103系列和ST103系列的ram和flash對比如下圖:
嵌入式專欄
11
105&107系列區別
GD的105/107的選擇比ST的多很多,具體見下表:
還有很多差異,可能有些工程師在實際應用過程中都發現了,歡迎大家12日到15日(週二到週五)晚上8點來騰訊會議收看關於GD32 Arm MCU直播課,嵌友就會更清楚兩者的區別了,不見不散啊,來吧,有什麼問題可以在直播間提問。快來掃碼進羣,等待會議開播:
來源地址:
https://blog.csdn.net/shenzhen_zixian/article/details/103250238
1.GD32 Arm MCU物聯網開發者線上課程精彩內容預告!
2.楊福宇專欄|尋找可超車的彎道:偉人講破字當頭,立也在其中了
免責聲明:本文系網絡轉載,版權歸原作者所有。如涉及作品版權問題,請與我們聯繫,我們將根據您提供的版權證明材料確認版權並支付稿酬或者刪除內容。