STM32CubeMX安裝及使用分享

說是教程,屬實是不敢當,只是把自己覺得較為正式的方式分享給各位,如有問題請提出大家一起討論。


文章目錄

    • 軟件下載
    • 軟件安裝
    • 軟件使用
      • 開發板工程
      • 單片機工程
        • 單片機工程創建
        • 單片機工程配置界面
        • 單片機工程具體配置
          • 引腳功能配置
          • 系統時鐘配置
          • 工程配置
            • Project
            • Code Generator
            • Advanced Settings
          • 生成


軟件下載

  1. 搜索STM32CubeMX。官方鏈接:
    STM32Cube initialization code generator
    ????在這里插入圖片描述

  2. 獲取軟件前建議注冊、登錄賬號。登錄后右上角會顯示個人信息,才會出現 “Get Software” 按鈕。??
    在這里插入圖片描述

  3. 點擊 “Get Software” 按鈕,跳轉到下方列表,選擇合適版本:
    在這里插入圖片描述

  4. 同意協議后,開始下載
    在這里插入圖片描述


軟件安裝

此軟件安裝過程十分經典,同意協議后一直下一步即可,固態硬盤電腦,安裝路徑默認即可。


軟件使用

  • 軟件啟動后界面如下
    在這里插入圖片描述

  • 其中,中間給出了三個選項按鈕,我先略說一下中間的開發板選擇按鈕和一些軟件好用的功能,后面大篇幅再講單片機按鈕的內容
    在這里插入圖片描述

開發板工程

為什么要先講開發板工程呢?
一是大體內容相同,而我所看到的各種教程,講開發板的少,初識STM32的同學不知道怎么找資料,不知道怎么用,而單片機,大家都知道上網去查手冊,所以先講講開發板的界面;
二是開發板其中很多界面和單片機界面類似,一通百通

  • 如果購買了或者運氣好獲得了官方的開發板,那可以選擇中間按鈕 “ACCESS TO BOARD SELECTOR” ,進入后的界面如下
    在這里插入圖片描述

    • 在首次或者每隔一段時間啟動STM32CubeMX時,軟件都會從服務器更新數據,等待即可自動完成
      在這里插入圖片描述

    • 如果軟件運行過,且不需要更新的話,直接Cancel也是沒問題的,可后面手動點擊首頁的Update更新,不再贅述

  • 右側列表是選型列表

    • 由于我們大多數開發,都是基于某型的MCU或者MPU(截至當前ST的產品線)進行自定義開發,除非基于官方開發板的項目,否則均不選擇上述第二個按鈕,我們直接選擇第一個按鈕創建基于芯片的新項目即可
      在這里插入圖片描述

    • 當然我還要在此提一句,如果有需要參考官方開發板設計的需求,那么查詢你所要的單片機型號是否有開發板,如果存在,右側列出并選擇:

  • 具體的ST開發板產品線如下:
    在這里插入圖片描述

  • 一般我們可以選擇根據單片機查找開發板
    在這里插入圖片描述

  • 勾選需要的型號,例如我選擇了F4系列后,右邊列表選擇F411開發板,則上方會出現詳細資料,這和官網的資料一致,免去了官網查找的麻煩
    在這里插入圖片描述

  • 此處提及幾個要點

    1. 點擊列表左側的?,可以進行收藏,收藏在左上角的Board Filters下方的星星處,一旦有了收藏后,星星即變為藍色,可在里面收藏常用型號的芯片和開發板

    2. Docs選項卡中有資料:BOM、原理圖、手冊等等,右側是Datasheet,按需下載
      在這里插入圖片描述

    3. 下載后的文件都在用戶目錄下,直接復制到資源管理器(此電腦)地址欄即可

%userprofile%/STM32Cube/Repository

在這里插入圖片描述


那么經過這一番操作,我們基本熟悉了軟件的大致布局,我們接下來切換到單片機選擇部分,有兩種方式:

  • 當前頁面左上角直接切換
    在這里插入圖片描述

我想,經過對比,你一定看出了這三個按鈕的關系其實是一致的,在當前頁面直接選擇
在這里插入圖片描述

此按鈕也可

  • 我們也可以關閉當前頁面,恢復到初始頁面重新選擇
    在這里插入圖片描述

單片機工程

單片機工程創建
  1. 那么經過一堆廢話,到了最常用的部分,點擊進入后,填入單片機型號
    在這里插入圖片描述

  2. 直接雙擊列表中型號或選中后右上角啟動均可
    在這里插入圖片描述

  3. 創建工程后,我們開始配置工作

單片機工程配置界面
  1. 上面一行是幾大核心配置,左側一列是具體外設及GPIO等配置
    在這里插入圖片描述

  2. 時鐘配置
    在這里插入圖片描述

  3. 工程配置
    在這里插入圖片描述

單片機工程具體配置

此處我們還是以最簡單的點燈為例子,進行從系統時鐘、調試口、GPIO等的配置

引腳功能配置
  1. RCC,按需開啟外部或內部時鐘,開啟后,右側引腳會有變化,請自行探索,而配置下方是詳細配置
    在這里插入圖片描述

  2. 我們可以選擇最常見的SWD調試接口
    在這里插入圖片描述

  3. 例如我們選擇PA1作為從電源 -> 電阻 -> LED -> IO灌入的接法,那么點擊PA1引腳,選擇GPIO_Output
    在這里插入圖片描述

  4. GPIO默認輸出低電平,驅動LED一般配置為推挽輸出,所以無上拉也無下拉,最后的亮滅由程序決定
    在這里插入圖片描述

    • 最下面還有個自定義標簽功能User Label,可以給IO自定義名稱,也就相當于寫在頭文件中的 “#define”
      在這里插入圖片描述
系統時鐘配置

我們已經在RCC頁面配置了內部或者外部時鐘,那么我們就要在時鐘配置界面進行各部分的詳細配置
在這里插入圖片描述

在選擇為HSE后,則外部時鐘源高亮,內部未選擇,則沒有連接
在這里插入圖片描述

將這里的8改成電路上的實際外部晶振數值,一般系統的總線頻率我們都配置為最大,這樣獲得更好的效果
在這里插入圖片描述
- 這里我們先不要管其他外設的時鐘頻率,先輸入想要的總線時鐘,回車后軟件會自動配置,最后只需要檢查即可
在這里插入圖片描述
- 如果時鐘配置有問題,會提示,我們點擊OK嘗試
在這里插入圖片描述
接著,后面的外設就都被自動配置完成
在這里插入圖片描述
如果對個別外設有特殊需求,再手動修改,否則即完成
在這里插入圖片描述
到此,MCU配置相關的部分已經基本完成,下面進行的是工程配置

工程配置
Project

在這里插入圖片描述

  • 工程名稱:
    • 規范地按照你的習慣起名字,注意不要有中文符號和空格等問題
  • 工程位置:
    • 位置自行選擇,還是中文路徑的問題,為避免編譯器問題,請養成良好習慣
  • 編譯工具的配置:
    • 大多數初學者入門包括很多工程師必不可少都在用Keil
      • 現在STM32推出了他們的CLT包支持VSCode官方插件直接編譯調試,還有STM32CubeIDE等
    • 這里我們還是選大多數人用的Keil,版本按照安裝的版本,我的是V5最新版,選擇大版本V5即可

其他部分保持默認

Code Generator

在這里插入圖片描述
這里修改兩處:

  1. 我們只需要復制工程所需要的庫即可
    怎么理解這句話,比如我們沒有用到USB、IIC、串口等等的功能,但在配置頁面勾選了一些功能,那么在這里勾選了All used libraries… 的話,就會使得工程目錄內存較大,可以選 僅使用必要的庫
  2. 勾選生成官方的.c和.h庫
Advanced Settings

里面有些高級配置,比如使用LL庫在這里配置,還有
一些寄存器調用等高級配置,若你需要配置它的時候,說明你已經不再適合讀這篇文章了

生成

最后,點擊右上角大大的按鈕,創建工程
在這里插入圖片描述

  • 若首次配置這個型號MCU的工程,因為沒有HAL庫的Firmware,故提示需要下載。
    Yes即可

在這里插入圖片描述

  • 登錄ST賬號
    在這里插入圖片描述
  • 登錄后在Help最后一項中可以看到
    在這里插入圖片描述

在這里插入圖片描述

  • 等待下載、安裝完成
    在這里插入圖片描述
    在這里插入圖片描述
  • 最后彈出此對話框表示成功
    在這里插入圖片描述
    Open Folder 表示打開工程文件夾
    里面是STM32CubeMX的工程文件: xxx.ioc和Keil工程文件等,可以在此添加其他文件和版本管理
    在這里插入圖片描述

Open Project 表示選擇直接用Keil打開工程,接下來直接寫代碼更方便


下篇博客將會分享使用官方CLT配合VSCode的生成和代碼編輯方法

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/79111.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/79111.shtml
英文地址,請注明出處:http://en.pswp.cn/web/79111.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MySQL報錯解決過程

我在調試datagrip的時候,顯示拒絕連接,開始的時候,我以為只是服務沒有開啟,結果到后來在網上搜索各種解決辦法無果后,就選擇卸載,卸載之后安裝新的MySQL 以下就是我的解決過程。 如果只是在使用外置軟件&…

動態規劃-62.不同路徑-力扣(LeetCode)

一、題目解析 機器人只能向下或向左,要從Start位置到Finish位置。 二、算法原理 1.狀態表示 我們要求到Finish位置一共有多少種方法,記Finish為[i,j],此時dp[i,j]表示:到[i,j]位置時,一共有多少種方法,滿…

Qt開發:項目視圖(Item Views)的介紹和使用

文章目錄 一、清單視圖(List View)1.1 基本概念1.2 使用示例(文字列表)1.3 圖標文字(圖標模式)1.4 常用設置1.5 完整示例 二、樹視圖(Tree View)2.1 基本概念2.2 常用類簡介2.3 快速…

GoWeb開發(基礎)

Go(Golang)是一種高效、簡潔的編程語言,特別適合Web開發。以下是詳細的Go Web開發指南,涵蓋從基礎到進階的內容。 --- 一、Go Web開發基礎 1. 標準庫 net/http Go 內置 net/http 包,支持快速構建 Web 服務。 - 基本示…

GSENSE2020BSI sCMOS科學級相機主要參數及應用場景

GSENSE2020BSI sCMOS科學級相機是一款面向寬光譜成像需求的高性能科學成像設備,結合了背照式(Back-Side Illuminated, BSI)CMOS技術與先進信號處理算法,適用于天文觀測、生物醫學成像、工業檢測等領域。以下是其核心特點及技術細節…

【日擼 Java 三百行】Day 9(While語句)

目錄 Day 9:While 語句的基本使用方法 一、基礎知識及案例分析 二、代碼及測試 拓展:流程控制語句專題補充 小結 Day 9:While 語句的基本使用方法 Task: while 語句本質上比 for 更基礎, 因此可以替代后者. 但 for 在很多時候…

React 第三十七節 Router 中 useOutlet Hook的使用介紹以及注意事項

React Router 中的 useOutlet 是 v6 版本新增的 Hook&#xff0c;用于在父路由組件中訪問當前嵌套的子路由元素。它提供了比 <Outlet> 組件更靈活的控制方式&#xff0c;適合需要根據子路由狀態進行動態處理的場景。 一、useOutlet的基本用法 import { useOutlet } fro…

TDengine 在智慧油田領域的應用

簡介 智慧油田&#xff0c;亦稱為數字油田或智能油田&#xff0c;是一種采用尖端信息技術與先進裝備的現代油田開發模式。該模式通過實時更新油氣田層析圖及動態生產數據&#xff0c;顯著提高了油氣田的開發效率與經濟價值。 信息技術在此領域發揮著至關重要的作用&#xff0…

關于AI 大數據模型的基礎知識 雜記

一、LM Studio LM Studio下載地址&#xff1a;LM Studio - Discover, download, and run local LLMshttps://lmstudio.ai/LM Studio是使用electron架構&#xff0c;引用的llama.cpp庫。 下載后的模型存儲于 /User/Admin/.lmstudio/models中。 二、llama.cpp庫下載地址 llam…

2025數維杯數學建模競賽B題完整參考論文(共38頁)(含模型、代碼、數據)

2025數維杯數學建模競賽B題完整參考論文 目錄 摘要 一、問題重述 二、問題分析 三、模型假設 四、定義與符號說明 五、 模型建立與求解 5.1問題1 5.1.1問題1思路分析 5.1.2問題1模型建立 5.1.3問題1求解結果 5.2問題2 5.2.1問題2思路分析 5.2.2問題2…

利用GPT實現油猴腳本—網頁滾動(優化版)

在瀏覽網頁的時候&#xff0c;發現有的網頁沒有直達最前這樣的功能&#xff0c;所有心血來潮利用ChatGPT寫了一個油猴腳本以實現此功能&#xff0c;在網站上出現一個可以自由拖動的滑塊。 聲明&#xff1a;引用或二創需注明出處。 如圖&#xff1a; 點擊即可直達當前網頁最前、…

MySQL基礎關鍵_013_常用 DBA 命令

目 錄 一、MySQL 用戶信息存儲位置 二、新建用戶 1.創建本地用戶 2.創建外網用戶 三、用戶授權 1.說明 2.實例 四、撤銷授權 五、修改用戶密碼 六、修改用戶名、主機名/IP地址 七、刪除用戶 八、數據備份 1.導出數據 2.導入數據 &#xff08;1&#xff09;方式…

計算機視覺與深度學習 | 圖像匹配算法綜述

圖像匹配算法綜述 圖像匹配 圖像匹配算法綜述一、算法分類二、經典算法原理與公式1. **SIFT (Scale-Invariant Feature Transform)**2. **ORB (Oriented FAST and Rotated BRIEF)**3. **模板匹配(歸一化互相關,NCC)**4. **SuperPoint(深度學習)**三、代碼示例1. **SIFT 特…

切比雪夫不等式詳解

切比雪夫不等式詳解 一、引言 切比雪夫不等式&#xff08;Chebyshev’s Inequality&#xff09;是概率論和統計學中最重要的基本定理之一&#xff0c;由俄國數學家切比雪夫&#xff08;P. L. Chebyshev&#xff0c;1821-1894&#xff09;提出。它為我們提供了一個強大工具&am…

霸王茶姬微信小程序自動化簽到系統完整實現解析

霸王茶姬微信小程序自動化簽到系統完整實現解析 技術棧&#xff1a;Node.js 微信小程序API MD5動態簽名 一、腳本全景架構 功能模塊圖 #mermaid-svg-0vx5W2xo0IZWn6mH {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-s…

氣動帶刮刀硬密封固定式對夾球閥:專為高粘度、強腐蝕性介質設計的工業解決方案-耀圣

氣動帶刮刀硬密封固定式對夾球閥&#xff1a;專為高粘度、強腐蝕性介質設計的工業解決方案 在石油化工、鋰電材料、污水處理等高難度工況中&#xff0c;帶顆粒的高粘度介質、料漿及強腐蝕性流體對閥門的性能提出了嚴苛要求。 氣動帶刮刀硬密封固定式對夾球閥憑借其獨特的結構…

Filecoin存儲管理:如何停止Lotus向特定存儲路徑寫入新扇區數據

Filecoin存儲管理&#xff1a;如何停止Lotus向特定存儲路徑寫入新扇區數據 引言背景問題場景解決方案步驟1&#xff1a;修改sectorstore.json文件步驟2&#xff1a;重新加載存儲配置步驟3&#xff1a;驗證更改 技術原理替代方案最佳實踐結論 引言 在Filecoin挖礦過程中&#x…

互聯網大廠Java求職面試:高并發系統設計與架構實戰

互聯網大廠Java求職面試&#xff1a; 高并發系統設計與架構實戰 第一輪提問&#xff1a;基礎概念與核心原理 技術總監&#xff08;嚴肅&#xff09;&#xff1a;鄭薪苦&#xff0c;你對JVM的內存模型了解多少&#xff1f;能說說堆、棧、方法區的區別嗎&#xff1f; 鄭薪苦&a…

AD原理圖復制較多元器件時報錯:“InvalidParameter Exception Occurred In Copy”

一、問題描述 AD原理圖復制較多元器件時報錯&#xff1a;AD原理圖復制較多元器件時報錯&#xff1a;“InvalidParameter Exception Occurred In Copy”。如下圖 二、問題分析 破解BUG。 三、解決方案 1、打開參數配置 2、打開原理圖優先項中的通用配置&#xff0c;取消勾選G…

網絡研討會開發注冊中, 5月15日特勵達力科,“了解以太網”

在線研討會主題 Understanding Ethernet - from basics to testing & optimization 了解以太網 - 從基礎知識到測試和優化 注冊鏈接# https://register.gotowebinar.com/register/2823468241337063262 時間 北京時間 2025 年 5 月 15 日 星期四 下午 3:30 - 4:30 適宜…