STM32的開發環境介紹

目錄

STM32軟件環境

????????Keil軟件在線安裝

????????其他軟件環境安裝

STM32開發的幾種方式

STM32寄存器版本和庫函數版本

標準外設庫的作用:


STM32軟件環境

STM32 的集成開發環境(IDE):編輯編譯軟件

常見的環境:

????????(1)KEIL:也稱為 MDK_ARM,收費軟件?

????????(2)IAR:?許多全球著名的公司都在使用IAR提供的開發工具

????????(3)STM32CUBEIDE:ST 官方的開發軟件,免費的

????????(4)VSCODE+插件

????????Keil軟件在線安裝

????????????????KEIL產品 官網下載 https://www.keil.com/download/product/

????????????????器件支持包 xxxxx.pack--KEIL 官網下載 https://www.keil.arm.com/

????????????????安裝keil軟件時不要有中文路徑

????????其他軟件環境安裝

????????????????ST-link 驅動安裝 -- 下載程序使用 ST-LINK 下載器?

????????????????CH340 驅動安裝 -- 在串口 1 的電路中 用到 CH340 進行 TTL 電平轉 USB 電平?

????????????????注意:ST-LINK 安裝不要和 KEIL 一個文件夾下面

????????注意:?

????????????????(1) CH340 裝之后,看不到效果。?

????????????????(2) ST_LINK 裝完,一定保存好圖標

STM32開發的幾種方式

3 種方式:

寄存器???????????????????? 直觀、底層、代碼執行效率高 ????????可移植性差、可讀性差

標準庫(庫函數)????????移植性高、可讀性強、不需??????????? 要考慮底層寄存器冗余量大

HAL 庫(LL 庫)???? 增加第三方庫的接口、使用CubeMx 可視化編程調試????????底層比較麻煩

無論哪一種開發方式,最終都是操作的寄存器。

ST 在推廣 HAL 之后,新出的系列芯片,不支持標準庫,只支持 HAL 庫

STM32寄存器版本和庫函數版本

????????某些系列的 STM32 根據不同的使用場景和 FLASH 大小,啟動文件.s 又有 cl、vl、xl、ld、md、hd 的區分,例如 STM32F10x 系列 MCU,其 cl、vl、xl、ld、md、hd 的含義如下:

????????cl:互聯型產品,stm32f105/107 系列

????????vl:超值型產品,stm32f100 系列?

????????xl:超高密度產品,stm32f101/103 系列?

????????hd:高密度產品,FLASH 大于 128 F103xC,F103xD,F103xE?

????????md:中等密度產品,FLASH=64 or 128 F103x8,F103xB?

????????ld:低密度產品,FLASH 小于 64K F103x4,F103x6

????????STM32F103ZET6 64K+512K 高密度產品?

????????STM32F103RCT6 48K+256K 高密度產品?

????????STM32F103C8T6 20K+64K 中密度產品

標準外設軟件庫:--從 ST 官網下載https://www.st.com.cn/zh/embedded-software/stsw-stm32054.html

標準外設庫的作用:

????????(1) 里面有參考例程,告訴我們各個外設如何使用?

????????(2) 里面有創建工程必要的文件

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

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

相關文章

【特殊場景應對9】視頻簡歷的適用場景與風險分析

寫在最前 作為一個中古程序猿,我有很多自己想做的事情,比如埋頭苦干手搓一個低代碼數據庫設計平臺(目前只針對寫java的朋友),比如很喜歡幫身邊的朋友看看簡歷,講講面試技巧,畢竟工作這么多年,也做到過高管,有很多面人經歷,意見還算有用,大家基本都能拿到想要的offe…

Linux系統性能調優技巧分享

在數字化時代,Linux 系統以其開源、穩定、高效的特性,成為服務器、云計算、物聯網等領域的核心支撐。然而,隨著業務規模的擴大和負載的增加,系統性能問題逐漸凸顯。掌握 Linux 系統性能調優技巧,不僅能提升系統運行效率,還能降低運維成本。下面從多個方面介紹實用的性能調…

關于Code_流蘇:商務合作、產品開發、計算機科普、自媒體運營,一起見證科技與藝術的交融!

Code_流蘇 🌿 名人說:路漫漫其修遠兮,吾將上下而求索。—— 屈原《離騷》 創作者:Code_流蘇(CSDN)(一個喜歡古詩詞和編程的Coder😊) 🌟 歡迎來到Code_流蘇的CSDN主頁 —— 與我一起&…

系統架構設計(三):質量屬性

常見分類 一般來說,質量屬性可以分為以下幾類: 類別常見質量屬性性能相關響應時間、吞吐量、資源利用率、實時性、可擴展性可用性相關可用性、高可用性(HA)、可靠性、容錯性、恢復性可維護性相關可維護性、可測試性、可擴展性、…

【鋰電池剩余壽命預測】GRU門控循環單元鋰電池剩余壽命預測(Matlab完整源碼)

目錄 效果一覽程序獲取程序內容代碼分享研究內容GRU門控循環單元在鋰電池剩余壽命預測中的應用摘要關鍵詞1. 引言1.1 研究背景1.2 研究現狀與問題1.3 研究目的與意義2. 文獻綜述2.1 鋰電池剩余壽命預測傳統方法2.2 深度學習在鋰電池壽命預測中的應用2.3 研究空白與本文切入點3.…

SpringCloud原理和機制

Spring Cloud 是一套基于Spring Boot的微服務開發工具集,它提供了在分布式系統環境下構建應用程序所需的一系列工具和服務。Spring Cloud旨在幫助開發人員快速構建一些常見的微服務模式,如服務發現、配置管理、智能路由、熔斷器、微代理、控制總線等。 …

LeetCode -- Flora -- edit 2025-04-25

1.盛最多水的容器 11. 盛最多水的容器 已解答 中等 相關標簽 相關企業 提示 給定一個長度為 n 的整數數組 height 。有 n 條垂線,第 i 條線的兩個端點是 (i, 0) 和 (i, height[i]) 。 找出其中的兩條線,使得它們與 x 軸共同構成的容器可以容納最…

有關圖的類型的題目以及知識點(2)

1、具有5個頂點的有向完全圖有20條弧。 2、若一個有向圖用鄰接矩陣表示,則第個結點的入度就是:第i列的非零元素的個數。 3、有向圖的鄰接矩陣可以是對稱的,也可以是不對稱的。 4、設N個頂點E條邊的圖用鄰接表存儲,則求每個頂點…

正則表達式的捕獲組

是正則表達式中的一個重要概念,用于提取字符串中的特定部分 捕獲組是通過正則表達式中的圓括號 () 定義的,它的作用是: 劃分和標記:將正則表達式的一部分劃分為邏輯單元。 提取數據:從字符串中提取符合組內模式的內容…

deepseek-cli開源的強大命令行界面,用于與 DeepSeek 的 AI 模型進行交互

一、軟件介紹 文末提供程序和源碼下載 deepseek-cli一個強大的命令行界面,用于與 DeepSeek 的 AI 模型進行交互。 二、Features 特征 Multiple Model Support 多模型支持 DeepSeek-V3 (deepseek-chat) DeepSeek-R1 (deepseek-reasoner)Dee…

Java—— 五道算法水題

第一題 需求: 包裝類:鍵盤錄入一些1~100之間的整數,并添加到集合中。直到集合中所有數據和超過200為止 代碼實現: import java.util.ArrayList; import java.util.Scanner;public class Test1 {public static void main(String[]…

安全編排自動化與響應(SOAR):從事件響應到智能編排的技術實踐

安全編排自動化與響應(SOAR):從事件響應到智能編排的技術實踐 在網絡安全威脅復雜度指數級增長的今天,人工處理安全事件的效率已難以應對高頻攻擊(如日均萬級的惡意IP掃描)。安全編排自動化與響應&#xf…

網絡原理 - 9

目錄 數據鏈路層 以太網 以太網幀格式 MAC 地址 DNS(Domain Name System) 完! 數據鏈路層 這里的內容也是簡單了解,除非是做交換機開發,一般程序員不需要涉及~~ 以太網 ”以太網“不是一種具體的網絡&#xf…

unity bug

發現一個奇怪的bug,就是某些unity版本打包apk時候不允許StreamingAssets里面有中文文件或者中文路徑。比如下圖這面這倆都是不行的。 解決方案:中文改為英文即可。 一般報錯信息如下: > Configure project :launcher WARNING:The option s…

【Linux網絡】打造初級網絡計算器 - 從協議設計到服務實現

📢博客主頁:https://blog.csdn.net/2301_779549673 📢博客倉庫:https://gitee.com/JohnKingW/linux_test/tree/master/lesson 📢歡迎點贊 👍 收藏 ?留言 📝 如有錯誤敬請指正! &…

計算機視覺——對比YOLOv12、YOLOv11、和基于Darknet的YOLOv7的微調對比

概述 目標檢測領域取得了巨大進步,其中 YOLOv12、YOLOv11 和基于 Darknet 的 YOLOv7 在實時檢測方面表現出色。盡管這些模型在通用目標檢測數據集上表現卓越,但在 HRSC2016-MS(高分辨率艦船數據集) 上對 YOLOv12 進行微調時&…

?MySQL 事務隔離級別詳解

? 以下是 MySQL 支持的四種事務隔離級別及其特性,按并發安全性從低到高排列: ?1. 讀未提交 (Read Uncommitted)? ?問題?: ?臟讀 (Dirty Read)?:事務可讀取其他事務未提交的數據。?不可重復讀 (Non-repeatable Read)?&am…

如何解決IDE項目啟動報錯 error:0308010C:digital envelope routines::unsupported 問題

如何解決IDE項目啟動報錯 error:0308010C:digital envelope routines::unsupported 問題 在現代軟件開發過程中,開發人員通常使用集成開發環境(IDE)如IntelliJ IDEA、Visual Studio Code(VSCode)等進行Node.js項目開發…

2025最新Facefusion3.1.2使用Docker部署,保姆級教程,無需配置環境

Docker部署Facefusion 環境 windows10 Facefusion3.1.2 安裝 拉取源代碼 git clone https://github.com/facefusion/facefusion-docker.git 此處如果拉不下來,需要科學上網,不會的可以找我。 運行容器 將Dockerfile.cpu文件中的的From python:3.…

docker容器監控自動恢復

關于實現對docker容器監控以及自動恢復,這里介紹兩種實現方案。 方案1: 實現思路: 找到(根據正則表達式)所有待監控的docker容器,此處篩選邏輯根據docker運行狀態找到已停止(Exit)類…