背景介紹:2019年12月19日在面板包偶然發可以免費申請測評GD32VF103開發板,欣喜萬分;在這之前各大技術論壇說是已經有國產兆易創新的RISCV指令集的MCU發布的事情,一時間摩拳擦掌想購入一塊開發板回來,體驗一下我天朝自己產的MCU和外國貨的區別,期盼國產自強的那一天,不為別的只為看技術文檔的時候不那么累。 下面我就從硬件電路,工程搭建,和固件庫和調試的基本使用等方面來談談我對這款國產MCU的粗略看法,以求拋磚引玉,因個人水平有限評測過程難免不當甚至錯誤的地方,煩請大神批評斧正。
一、硬件篇:
1、開箱預覽,如其他評測一樣豹子標的白色外翻盒子,兩篇薄如蟬翼的緩沖薄膜,兩根白色的數據線,一款藍色的開發板。包裝略顯簡單,但是對於一個專注技術而不是外觀的人來說已經足夠了。
2、開發板預覽,官方提供了詳細的關於開發板的資料,原理圖,硬件說明手冊,固件手冊等,先上圖吧,我單獨標了一下開發板各個功能模塊,開發板幾乎板載了所有的指控IC包含的功能,單獨引出了主控IC可用的80多個IO口,所以當你入手這款開發板之后就連調試器也不用另外購買,板載的官方調試器就可以滿足你所有的需求。

3、板子設計精良簡潔,每個功能模塊都標有字符說明,一目了然,抬手一看就知道是什么功能,再配備官方提供的原理圖即使入門級別的選手也能輕松搞清楚。
4、這款開發板的主控IC使用的是兆易創新自主開發的基於RISC-V指令集的國產MCU,這款MCU也是兆易創新目前唯一一款RISC-V系列的芯片,而且板載的GD32VF103VBT6是其系列最高配的工業級芯片。
二、開發環境篇
1、了解完開發板的基本情況之后在來看看該開發板所使用的IDE,畢竟沒有好的開發環境再好的硬件配置想輕松使用起來也是讓人頭疼的一件事情,由於GD32VF103系列芯片使用的是芯來科技提供的代號為《Bumblebee》IP內核,所以開發環境需要到芯來科技官網下載下,芯來科技。
2、官方只提供了基於windows的集成開發環境,其他系統的用戶只能自己搭建開發環境了。該IDE也是基於一個開源項目Eclipse,官方已經配置好了一切的一切。也就是說你下載下來IDE只需要做的工作量幾乎為零,不像IAR,Keil等要配置好多東西。
3、關於怎樣建立一個工程,官方已經提供了非常詳細的手冊,這里我就不復述了,文章末尾會附上相應的配置文件,根據配置文件就可以建立一個工程,事實上實際的建立 一個工程遠比官方文檔說明的要簡單的多。我們自己需要配置環境的步驟少,這樣可以把更多的精力放在怎樣去編寫代碼。

三、官方固件篇
1、使用IDE建好一個工程之后我們面臨的一個問題就是寫代碼,現在的MCU由於集成了更多的內部資源,如果像51單片機那樣直接去操作寄存器那簡直是不敢想的一件折磨人的事情,為此GD和一線國際大廠ST的一樣為芯片提供了完善的固件庫,加快了用戶的開發進度。
2、使用過ST單片機的同學都知道ST有一個非常完善的標准固件庫,並且在相對高端的MCU推出了更完善的HAL庫,方便在不同產品上的代碼移植工作,GD也是一樣提供了一個標准的固件庫,估計在日后產品線更加豐富之后也能推出類似HAL的固件庫,下面我們來對比ST的標准固件庫來了解一下GD的固件庫。
3、提供固件庫之后最重要的事需要有一個固件庫的說明和相應的編程手冊,這方面ST和GD做的都非常棒,提供了完善的資料,重要的區別是GD提供的是官方編寫的中文版資料,ST的大多是技術愛好者自行翻譯的中文(英文的對於大多數國人來說晦澀難懂),這就造成因為翻譯的問題導致有些細節的地方不准確。
4、不論是ST還是GD的開發流程都大同小異,比如說一個端口的初始化都是一樣的,其中一個的區別就是,GD初始化采用的是函數的方式,ST采用的是結構體的方式,比如說官方提供的COM初始化的函數就能看出來,每一個步驟都對應一個函數,而ST的是先配置一個結構體,然后用一個init的函數來完成初始化。

5、除了以上編程思維方面的區別其他的感覺一樣,用過ST的同學想上手GD是一件很容易的事情。
四、調試篇
1、之前說過了開發板自帶調試器也預留了JlTAG調試接口,對於沒有JLink調試器的同學,板載的完全就夠了,在建立完工程之后都不用配置調試器,直接點擊那個小蜘蛛按鈕就可以進行調試。

2、關於調試給我的感覺就是,調試速度慢,由於我沒有JTAG調試器不知道是板載調試器的問題還是調試軟件優化的問題,打上斷點之后命中速度比較慢。另外一個好的地方就是借助Eclipse的強大和調試器的配合可以很方便的看到內存寄存器的狀態。
