Robomaster電控入門(1)STM32開發環境搭建


STM32介紹

開發方式介紹

stm32是半導體廠商ST(意法半導體)生產的基於Arm Cortex的單片機系列,目前被廣泛應用於工業,物聯網,科創競賽等。

目前國內大學生機器人競賽Robomaster和Robocon主要使用的是stm32f4系列單片機,該系列基於Cortex-M4內核,具有較高的性能,CPU工作頻率可以達到168MHz,基本可以滿足比賽中所有的控制需求。

stm32的主流開發方式包括寄存器開發,標准庫開發,HAL庫(LL庫)開發。

寄存器開發即直接控制32的寄存器,工程運行效率高,但是開發難度大,可讀性與可移植性差;

標准庫開發即使用ST官方開源的一套標准固件庫進行開發,這套固件庫對一系列寄存器操作進行了封裝,降低了開發難度,提高了可讀性和可移植性,但目前ST已經將推廣的重心從標准庫轉移到了HAL庫(LL庫)上,雖然還是有許多工程在使用標准庫進行開發,但無論是軟件還是文檔的更新速度,標准庫都已經無法和后者比擬了;

HAL庫(LL庫)開發是ST開源的又一套新的庫,與標准固件庫的最大區別是,HAL庫(LL庫)支持ST開發的一款圖形化工程配置軟件STM32CubeMX,使用該軟件可以大大提升開發效率和工程移植性,盡管由於HAL庫采用了更加復雜的封裝,降低了工程的運行效率,但是由於stm32本身強大的性能,中小型的工程依然能夠流暢的運行。目前越來越多的用戶開始使用HAL庫(LL庫)進行開發;

本系列教程采用的開發方式為HAL庫(LL庫)開發(以下簡稱HAL庫開發),同時也是Robomaster中許多隊伍選擇的開發方式。

HAL庫開發環境包括

  1. 代碼編輯&編譯器(Keil MDK,IAR等)
  2. 下載器驅動(JLink&STLink)
  3. STM32CubeMX

開發環境下載地址

keil mdk5安裝全家桶

鏈接:https://pan.baidu.com/s/1o3znMYT_c_GfCc0abGqmYw
提取碼:c957

cubemx安裝全家桶

鏈接:https://pan.baidu.com/s/1-aiZpfv_dczfQBQFHCdApA
提取碼:1sfe

安裝教程

下載完以上兩個壓縮包之后再閱讀后續內容!!!

安裝步驟如下——

  1. Keil安裝
  2. JLink,STLink驅動安裝
  3. STM32CubeMX安裝

1.Keil安裝

首先,解壓keil mdk5安裝全家桶壓縮包,點開之后看到如下內容——

首先點擊MDK-523.exe進行MDK的安裝,安裝過程可以參考0-如何安裝keil5.pdf

需要注意的是在選擇安裝路徑的頁面,一定要保證自己的路徑中不含有中文注意!!!!不要含有中文!!下文中的軟件同理,這是一個常識,不要在安裝路徑中帶有中文!!

一直點擊next,等待安裝完成即可,跳出該頁面可以直接關閉

安裝完成后可以在桌面或者是引導菜單中看到這個綠油油的圖標,說明keil已經安裝完成。

安裝完成之后,需要進行破解,首先以管理員方式打開keil(注意,管理員方式!!!

點擊File->License Management..

復制Computer ID到剪貼板中

然后打開keil mdk5安裝全家桶中的破解軟件文件夾,右鍵Keil_ARM_MDK_5.00_Keygen_serial_Crack.exe,以管理員方式運行,需要注意可能會被windows defender或者別的殺毒軟件當成病毒刪掉,如果被刪了就去對應的軟件下面選擇還原

將復制好的Computer ID復制到CID中,Target選擇ARM,填完后點擊Generate

將生成的破解碼粘貼到keil中

點擊Add LIC,如下圖顯示則破解成功

完成keil的安裝破解之后,我們開始安裝stm32f1與f4的芯片包,依然是在keil mdk5安裝全家桶下,找到

直接雙擊安裝即可,他們提供了f1和f4系列芯片的一些具體芯片信息,是下載和創建工程時必要的

2. JLink,STLink驅動安裝

Jlink和STlink是常用的兩種下載/調試器,一般我們使用jlink/stlink鏈接開發板與電腦,將電腦編譯生成的可執行文件燒錄到單片機上。

這是常見的jlink下載器,燒錄時遵守jtag協議

這是stlink下載器,燒錄時遵守swd協議

也有小型且便宜的stlink下載器

jtag可以兼容swd,也就是說使用jlink同樣可以按照swd協議進行下載

Robomaster的開發板都是swd下載接口

我個人推薦使用jlink,因為jlink可以提供一些優秀的調試工具,比如jscope,這是一個功能強大的虛擬示波器,可以實時監視單片機中的變量

下面我們開始安裝這兩個下載器所需要的驅動——

keil mdk5安裝全家桶下,找到Setup_JLink_V496.exe,雙擊運行,一路點擊next,最后會彈出如下界面

勾選mdk,點擊OK即可

成功安裝后點擊Finish

接着安裝stlink

keil mdk5安裝全家桶下,找到ST LINK驅動及教程文件夾,點擊進入后找到ST-LINK驅動文件夾

64位系統點擊dpinst_amd64.exe進行安裝,一路next即可,成功后顯示

STLINK調試補充教程.pdf下有更加詳細的配置信息,以及升級stlink固件的方式,如果出現了不能下載的情況,可以參考該文檔

STM32CubeMX安裝

最后需要安裝的是stm32cubemx,下載並解壓cubemx安裝全家桶,內容如下:

首先雙擊安裝jre-8u191-windows-x64.exe,點擊安裝之后等待即可,當然你的電腦上可能有更高版本的java,如果有的話,就不必再進行安裝了,出現如下界面則安裝完成

然后雙擊安裝SetupSTM32CubeMX-5.0.0.exe,如下界面說明安裝完成

完成cubemx的安裝之后,我們還需要安裝軟件庫。運行cube,點擊Help->Manage embedded software packages,在彈出的界面中點擊左下角的From local,在彈出的界面中找到cubemx安裝全家桶下的兩個壓縮包STM32Cube_FW_F1_V1.6.0.zipSTM32Cube_FW_F4_V1.19.0.zip,等待自動安裝完即可

至此,cubemx所需要的環境也安裝完畢了

點燈實驗

為了檢驗自己安裝的環境成功與否,參照如下視頻進行點燈實驗

https://www.bilibili.com/video/av26331717

需要注意的是,視頻中使用的cubemx版本比較老,界面和此次安裝的cube有所區別,但是兩個版本cube的內容基本一致,大家可以慢慢摸索配置的方法,也可以等待下一次的視頻更新,會有工程配置的過程。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM