VScode利用EIDE和cortex-debug進行stm32開發(包括配置以及使用)

玛卡巴卡也会有悲伤發表於2024-07-22

目錄
  • 前言
  • 必要準備
  • 第一步:安裝vscode外掛——EIDE
    • EIDE是什麼
    • EIDE的下載
    • EIDE的配置(重點)
    • EIDE功能的簡單介紹
      • 1.專案的建立:新建專案或者匯入專案
      • 2.為專案選擇晶片支援包(不是必須)
      • 3.構建配置
      • 4.燒錄配置
      • 5.專案屬性和專案設定
      • 6.安裝實用工具和開啟外掛設定
  • 第二步:安裝vscode外掛——cortex-debug
    • 在vscode的擴充頁面🔍下載
    • 配置cortex-debug(重點)
      • 在安裝兩個軟體後,設定arm*****in(懶得打名字了😁)和你的gdb server的路徑
  • 第三步:開始程式設計😎😎😎
    • 1.匯入工程or新建工程
    • 2.設定構建配置
    • 3.專案屬性和專案設定
    • 4.設定燒錄配置
  • 第四步:配置除錯檔案
  • 第五步:編譯和下載程式

前言

你是否因為keil頁面太醜而煩惱,你是否因為keil編譯太慢而惱怒,ok阿,今天也是給大家帶來怎麼在vscode上進行stm32的程式設計
(我不會告訴你,我搞了好幾天才搞好的💔💔💔)

必要準備

  • vscode和c語言環境
  • keil5
  • stm32開發板

第一步:安裝vscode外掛——EIDE

EIDE是什麼

  • EIDE 是一個 VSCode 外掛,用來開發微控制器專案,比如:8051, stm8, stm32, other cortex-m mcus ...

  • 這裡給出EIDE的官網以及論壇地址,有什麼不知道的可以去看💯💯💯。

EIDE的下載

  • 在vscode擴充介面搜尋EIDE並下載
    在vscode擴充介面搜尋EIDE並下載
  • 下載好後應該是這個介面

EIDE的配置(重點)

  • 點選設定工具鏈,接著點Keil MDK(可以選擇tool.ini的路徑,這樣會自動選中編譯器的選項)。
    在這裡插入圖片描述
    在這裡插入圖片描述
  • 有個✅在邊上就是可以了
    在這裡插入圖片描述

EIDE功能的簡單介紹

  • 為什麼是簡單介紹?因為太囉嗦了,我嫌麻煩😋,大家可以去EIDE的官方文件去看。

1.專案的建立:新建專案或者匯入專案

在這裡插入圖片描述

  • 新建專案:四個選擇。就我個人而言,在還沒弄懂EIDE之前都是選擇的匯入的keil5專案,但是後面自己建了個EIDE模板之後,一直都是從本地專案模板新建自己的專案,舒服的很~( ̄▽ ̄~)(~ ̄▽ ̄)~。

在這裡插入圖片描述

  • 匯入專案:一般來說都是選第一個,匯入keil的工程
    在這裡插入圖片描述選中keil工程
    在這裡插入圖片描述
    右下角彈出提示是否和keil專案並存(個人建議選NO,不和keil資料夾放一起,太亂了😅,放其他de地方是不影響我們的開發的)。(ง •_•)ง
    在這裡插入圖片描述
    -無論你是新建還是匯入最後都是一樣(見👇圖),新建的話在專案資源項就是空的,右鍵新增就行了,新增的如果是資料夾的話有兩個選項,虛擬資料夾和普通資料夾(具體的你就看官網去吧),見👇👇圖
    👇
    👇👇

2.為專案選擇晶片支援包(不是必須)

在這裡插入圖片描述

  • 點選之後兩個選項 ,選from disk(因為本來用keil5程式設計的時候不就裝了嗎,選本地磁碟找就行)就行,哦對了,這個不是必須的
    在這裡插入圖片描述
    找到晶片包就匯入了,然後選好自己晶片,
    在這裡插入圖片描述

3.構建配置

在這裡插入圖片描述

  • 第一行🔨構建配置 就是選編譯器了
    在這裡插入圖片描述

  • 第二個看你是什麼M3還是啥了,自己選

  • 第三行一般都是false吧,看你keil這裡設定吧
    !](https://i-blog.csdnimg.cn/direct/acfef43e14c44b7dbcee02ab4414275f.png)

  • 第四行啥啥啥的佈局,這個比較重要。如果你是新建專案的話,請你參考keil的圖來填寫
    在這裡插入圖片描述

4.燒錄配置

  • 這個你用啥,你選啥就行,EIDE會提示你安裝的。
    在這裡插入圖片描述
  • 我是用的stlink,當時好像是提示我下了東西的(燒錄的),這個大家可以點選左邊的實用工具下載的
    在這裡插入圖片描述

5.專案屬性和專案設定

-這個一看就明白,我才不說🤓🤓🤓🤓

6.安裝實用工具和開啟外掛設定

安裝實用工具和開啟外掛設定
請看VCR👆

第二步:安裝vscode外掛——cortex-debug

在vscode的擴充頁面🔍下載

在這裡插入圖片描述

配置cortex-debug(重點)

  • 需要安裝ARM-GNU-Toolchain

  • 需要安裝一個gdb server,像用JLink的話驅動自帶,stlink可以用openOCD

  • 其實以上兩個軟體都可以在EIDE的實用工具選項安裝,省時間

  • 給個EIDE論壇的cortex-debug教程(我當時配置這個用了蠻久,openOCD建議下載別人編譯過的,如果自己編譯so
    麻煩。總的來說的話就是自己下兩個東西,然後設定下這兩個的路徑在cortex-debug中,然後設定cortex-debug 的
    launch.json 配置,🤗🤗🤗)

在安裝兩個軟體後,設定arm*****in(懶得打名字了😁)和你的gdb server的路徑

  • 我用的是openOCD,所以設定的是openOCD的路徑

  • 在setting檔案中寫的🙃
    在這裡插入圖片描述

  • !!!!!!!!!!!!!🤓🤓請注意,記得設定一下兩個軟體的環境變數🤓🤓!!!!!!!!!!!!!

  • 還有個luanch檔案要寫,我到後面的時候再說(◡ᴗ◡✿)(◡ᴗ◡✿)

第三步:開始程式設計😎😎😎

講了這麼多你肯定會了,直接開始就完了✧(≖ ◡ ≖✿)

1.匯入工程or新建工程

  • 匯入工程:匯入keil工程
  • 新建工程:自己看著選,看著👆說的,新增下自己的資原始檔,別忘了預編譯,包括路徑(沒有模板的話,麻煩吧🤓🤓🤓)

2.設定構建配置

  • 選擇編譯器(前面設定過了,一般都不用動)
  • 選CPU型別,匯入的不用管,新建的看著選
  • 一般可以不管,你有用到就填true
  • ***佈局,匯入的不用管,新建的請參考keil中的,👆有圖
  • 構建器選項(重要),看👇

無描述

  • 構建器設定,它和keil的魔法棒那邊對應的,請參考keil那邊,我這邊就給出用的多的幾個參考

這個看需要是否打上
在這裡插入圖片描述
在這裡插入圖片描述
👇這個記得取消,如果你需要下載到板子上
在這裡插入圖片描述

3.專案屬性和專案設定

-這個只有新建的需要管了,匯入的是可以不用管的。新建的時候新增檔案的時候一定要加上包括目錄和預處理宏定義
可以參考自己之前keil專案的這兩個地方👇
在這裡插入圖片描述

4.設定燒錄配置

這個比較簡單,前面有提過,我用的stlink,所以選上就行(請注意,前面提到的stlink燒錄的那個軟體不支援中文路徑,你的專案不能有中文路徑,匯入的原專案也不能有中文路徑

第四步:配置除錯檔案

在這裡我們要設定下除錯的launch檔案
在這裡插入圖片描述
選擇我們的cortex-debug
在這裡插入圖片描述
在launch那寫程式碼,我這裡是stlink和openocd所以可能有些不一樣,
在這裡插入圖片描述

 {
            "cwd": "${workspaceRoot}",
            "executable": "${workspaceRoot}/Output/Debug/template.axf",//可執行檔案的路徑,你看你自己的是在哪
            "name": "stlink",                                          //用的什麼模擬stlink還是jlink
            "request": "launch",
            "type": "cortex-debug",
            "servertype": "openocd",                                    //用openocd我這裡是openocd,你看你自己用的什麼
            "configFiles": [
                "interface/stlink.cfg",                                 //openocd下的檔案
                "target/stm32f1x.cfg"                                   // 同上
            ],
            "runToEntryPoint": "main",
            "svdFile": "E:\\keil5\\Keil\\STM32F1xx_DFP\\2.2.0\\SVD\\STM32F103xx.svd"//svd檔案路徑,這個加了就是能看暫存器的值吧,可有可不有,
            
        }
  • 關於這個地方大家請參考EIDE論壇的cortex-debug教程

第五步:編譯和下載程式

是不是省略了寫程式碼的部分😮😮😮😮😮
我的意思是你自己記得寫好😤😤😤
(我比較懶,你寫就好了🤡)

在這裡插入圖片描述

  • 第一個是編譯
  • 第二個是re編譯
  • 第三個是下載
  • 第四個是清理Output檔案

編譯
在這裡插入圖片描述
下載到板子上
在這裡插入圖片描述

最後大家可以多看看EIDE的文件,就知道怎麼搞了,我建議可以自己建一個模板,這樣每次就會很方便,👋👋👋

相關文章