新四季網

gd32開發板教程(GD32F103單片機學習筆記之GD32103E-EVAL開發板入門)

2023-10-12 14:29:24

之前做學習或者做項目一直用的STM32系列的單片機,最近看著STM32單片的價格暴漲,對於我這個「窮苦」老百姓來說,買不起啊、買不起啊、買不起啊。既然給自己「定性」了,那就要「另闢蹊徑」啊,總不能老是在同一棵樹上掛著啊。另外,看到各種晶片被「漂亮國」制裁,我一腔愛國之心立馬熊熊燃燒了起來,當即決定,老外的晶片不用了,找找咱「自己家」的晶片。又考慮到儘量降低學習開發成本,找來找去找到了兆易創新這家。據說,STM32的代碼簡單改一下就能在對應的晶片上運行起來。這麼好的事,不得玩玩啊。

說幹就幹,學習單片機第一步,那必須得買塊開發板啊。又一通找,找到了兆易創新自家的GD32103E-EVAL全功能開發板(還發現了一款GD32VF103的開發板,使用的是RISC-V內核,對這個也很感興趣,也一塊買了,後面再研究),上面的單片機型號是GD32F103ZET6,考慮到這款單片機的外設資源相對來說比較豐富,所以最終選擇了它。這傢伙是這樣的:

GD32103E-EVAL開發板

有了開發板,那就要進行相應的學習了,後續相關的文章將記錄我的學習過程。那麼第一步先來驗證一下開發板吧,這時候才發現這貨除了在官網上有個對應的官方固件庫和例程,沒有其他資料(也可能是我沒發現,也懶得找了,就從這下手吧)。無妨,那就先下載這個官方例程來整整。從這裡下載:

http://gd32mcu.com/download/down/document_id/182/path_type/1

下載後解壓,裡面是這個樣子的:

GD32F10x固件庫及例程

簡單來說說裡面的每個目錄都是用來幹啥的:

目錄

功能

GD32F10x_AddOn

GD32F10x系列單片機相關的插件,包括IAR和Keil的晶片支持包

GD32F10x_Firmware_Library

GD32F10x系列單片機固件庫,類似STM32固件庫V3.5.0

GD32103C_EVAL_Demo_Suites

GD32103C-EVAL開發板對應的開發文檔、例程等

GD32103E_EVAL_Demo_Suites

GD32103E-EVAL開發板對應的開發文檔、例程等

GD32107C_EVAL_Demo_Suites

GD32107C-EVAL開發板對應的開發文檔、例程等

搞明白了固件庫的目錄結構,那就找個例程測試一下板子吧。由於用的是GD32103E-EVAL開發板,因此打開GD32103E_EVAL_Demo_Suites目錄,是這麼個樣式的:

GD32103E_EVAL_Demo_Suites

Docs目錄中包含開發板的原理圖和用戶指南;Projects目錄中包含各種外設例程,有小燈閃爍啊、按鍵啊、串口輸出啊等等,我將會在這個裡面拿出一個最簡單的小燈閃爍的例程來對開發板做一個簡單的驗證;Utilities目錄中包含開發板自帶的LCD的驅動程序及第三方的文件系統相關的代碼,如果後續做這方面的開也可以將這部分進行移植。

這樣固件庫的大體目錄結構就知道得差不多了,下一步找到對應開發板例程中的小燈閃爍的例程對開發板進行個簡單的驗證。

當然要先安裝相應的IDE,我這裡安裝的是Keil v5,具體的安裝及「你懂的」特殊處理步驟這裡就不多說了,網絡上資源很多。裝好Keil之後,為了讓Keil可以支持GD32F103系列的單片機,首先要先安裝對應的晶片支持包。

打開Keil後如下圖所示:

Keil界面

點擊紅框中的Pack Installer後彈出相應的窗口:

Pack Installer

因為Keil的晶片支持包下載的伺服器在國外,所以打開後網絡更新速度很慢,這樣一直在更新的話,無法顯示手動安裝晶片支持包的進度,因此首先把左上角菜單欄Packs中的啟動更新的選項去掉:

去掉啟動更新的選項

然後關閉將Pack Installer關閉後重新打開,這個時候會發現下面的更新提示不再提示更新了:

不再提示更新

如果安裝其他晶片的支持包,推薦去Keil的網站先下載下來後再手動安裝,下載地址為:

https://www.keil.com/dd2/pack/

繼續,點擊左上角菜單欄File中的導入,在打開的對話框中找到Keil v5對應的晶片支持包打開即可:

導入

選擇文件

等待安裝完成後將Pack Installer窗口關閉:

安裝完成

此時提示軟體包有改動,點擊是即可:

提示軟體包變動

隨後點擊Keil菜單Project→Open Project...,在打開的對話框中找到要用的小燈閃爍的例程工程文件,點擊打開:

打開工程

選擇工程文件

打開工程後有如下提示,是因為固件庫中的工程是Keil v4版本的,用Keil v5軟體打開會有這樣的提示:

提示未找到晶片型號

提示設備不支持

因此需要先將該工程轉換為Keil v5工程,Project→Manage→Migrate to Version 5 Format...:

轉換工程

轉換完成後有如下提示,點擊確定即可:

轉換完成

這時會發現左邊的工程顯示框中多出了一個CMSIS,這是Cortex-M內核軟體接口標準,是Keil v5軟體提供給工程使用的,也可以自行添加,要想讓工程使用Keil提供的CMSIS庫,還需對工程進行設置:

CMSIS

按照下圖所示進行操作,將..\..\..\..\GD32F10x_Firmware_Library\CMSIS這一行刪掉,如果不刪掉這行,工程會默認使用固件庫中的core_cm3.h,編譯時會出現很多錯誤,導致編譯無法通過:

刪掉工程CMSIS目錄

設置完成後即可點擊重新編譯對工程進行編譯了:

編譯工程

下面的編譯輸出中有相應信息輸出,如果編譯完成顯示錯誤0警告0,則代表編譯沒有錯誤:

編譯結果

編譯完成後就要燒錄到開發板中查看現象了,首先將開發板自帶的USB線的Micro口插在開發板的GD-Link USB口上,另一端插在電腦USB口上,開發板自帶的GD-Link使用的是CMSIS-DAP調試器,在電腦端不需要安裝驅動,但需要在燒錄之前對工程進行相應設置:

修改調試器

選中Reset and Run

最後點擊左上角的燒錄按鈕即可進行程序的燒錄,同時下面的提示框中輸出提示信息:

燒錄程序

燒錄過程提示

燒錄完成後開發板上的四個小燈會出現流水燈的效果,說明程序燒錄成功:

例程演示

最後,貼上小燈閃爍的核心代碼,首先對四個小燈進行初始化,然後配置系統滴答,實現ms級別的延時,隨後while循環中依次打開每個小燈並延時,實現最終的流水燈效果:

流水燈核心代碼

到此為止,算是對開發板做了個小小的入門了,那這次的學習就到這裡吧。

,
同类文章
葬禮的夢想

葬禮的夢想

夢見葬禮,我得到了這個夢想,五個要素的五個要素,水火只好,主要名字在外面,職業生涯良好,一切都應該對待他人治療誠意,由於小,吉利的冬天夢想,秋天的夢是不吉利的
找到手機是什麼意思?

找到手機是什麼意思?

找到手機是什麼意思?五次選舉的五個要素是兩名士兵的跡象。與他溝通很好。這是非常財富,它擅長運作,職業是仙人的標誌。單身男人有這個夢想,主要生活可以有人幫忙
我不怎麼想?

我不怎麼想?

我做了什麼意味著看到米飯烹飪?我得到了這個夢想,五線的主要土壤,但是Tu Ke水是錢的跡象,職業生涯更加真誠。他真誠地誠實。這是豐富的,這是夏瑞的巨星
夢想你的意思是什麼?

夢想你的意思是什麼?

你是什​​麼意思夢想的夢想?夢想,主要木材的五個要素,水的跡象,主營業務,主營業務,案子應該抓住魅力,不能疏忽,春天夢想的吉利夢想夏天的夢想不幸。詢問學者夢想
拯救夢想

拯救夢想

拯救夢想什麼意思?你夢想著拯救人嗎?拯救人們的夢想有一個現實,也有夢想的主觀想像力,請參閱週宮官方網站拯救人民夢想的詳細解釋。夢想著敵人被拯救出來
2022愛方向和生日是在[質量個性]中

2022愛方向和生日是在[質量個性]中

[救生員]有人說,在出生88天之前,胎兒已經知道哪天的出生,如何有優質的個性,將走在什麼樣的愛情之旅,將與生活生活有什么生活。今天
夢想切割剪裁

夢想切割剪裁

夢想切割剪裁什麼意思?你夢想切你的手是好的嗎?夢想切割手工切割手有一個真正的影響和反應,也有夢想的主觀想像力。請參閱官方網站夢想的細節,以削減手
夢想著親人死了

夢想著親人死了

夢想著親人死了什麼意思?你夢想夢想你的親人死嗎?夢想有一個現實的影響和反應,還有夢想的主觀想像力,請參閱夢想世界夢想死亡的親屬的詳細解釋
夢想搶劫

夢想搶劫

夢想搶劫什麼意思?你夢想搶劫嗎?夢想著搶劫有一個現實的影響和反應,也有夢想的主觀想像力,請參閱週恭吉夢官方網站的詳細解釋。夢想搶劫
夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂什麼意思?你夢想缺乏異常藥物嗎?夢想缺乏現實世界的影響和現實,還有夢想的主觀想像,請看官方網站的夢想組織缺乏異常藥物。我覺得有些東西缺失了