吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

關于STM32的四類嵌入式軟件 (庫)

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 2020-03-04 09:27 ? 次閱讀

關注我的朋友中,初學者比較多,今天就寫點基礎知識。

1寫在前面

陸續收到一些朋友的問題:

1.我是選擇寄存器開發STM32,還是標準外設庫呢?

2.你有STM32L0標準外設庫嗎?

3.HAL庫和LL庫有什么差異?

。。。

針對STM32開發使用的嵌入式軟件,或者我們說的庫,可以分為四類:

STM32Snippets

Standard Peripheral Library

STM32Cube HAL

STM32Cube LL

下面就寫一下關于這四種庫的相關內容、以及對比應用等。

2

STM32Snippets

什么是STM32Snippets?

STM32Snippets是高度優化的代碼示例集合,使用符合CMSIS的直接寄存器訪問來減少代碼開銷,從而在各種應用程序中最大化STM32 MCUs的性能。

每個STM32系列的100多個片段演示了如何以最小的內存占用有效地使用STM32外圍設備。

地址:

https://www.st.com/en/embedded-software/stm32snippets.html?querycriteria=productId=LN1898

STM32Snippets可以理解為我們常說的“寄存器”開發STM32的底層驅動代碼。

主要針對的底層開發人員,或者從51轉過來,直接操作寄存器開發的人員。 是沒有經過封裝,可見底層寄存器的一套示例代碼。


STM32Snippets目前官方只提供:STM32F0和L0的示例代碼包。

3

Standard Peripheral Library

Standard Peripheral Library:簡寫SPL,也叫標準外設庫。

標準外設庫相信學習過STM32的朋友都不陌生,是一組外圍設備的C語言代碼集合。

標準外設庫是在寄存器的基礎上進行了一次簡單封裝,主要是面向過程的嵌入式系統開發人員。

地址:

https://www.st.com/en/embedded-software/stm32-standard-peripheral-libraries.html?querycriteria=productId=LN1939

目前標準外設庫支持STM32F0、 F1、 F2、 F3、 F4、 L1,不支持F7、 H7、 L0、 L4、 G0等系列。

所以,不要再問:在哪里下載L0的標準外設庫了。

4

STM32Cube HAL 和 LL

HAL:Hardware Abstraction Layer,硬件抽象層庫

LL:Low-Layer,底層庫

STM32Cube HAL 和 LL配合STM32CubeMX工具對STM32進行開發。

HAL針對的是具有一定嵌入式基礎的開發人員,HAL具有很好的移植性。

LL庫相對HAL,具有簡單的結構,針對之前從事SPL,或寄存器開發的人員。

地址:

https://www.st.com/stm32cubemx

最近新增了STM32Cube MP1。

STM32Cube HAL 和 LL是目前官方重點維護和更新的庫,也建議大家都學習一下。而且新出來的型號(如L4、G0等)就只有STM32Cube HAL 和 LL庫了。

5

四種庫對比

來自官方的對比信息,包含可移植性、優化、難以程度等。

其中:

Portability:可移植性

Optimization :優化

Easy:難易程度

Hardware coverage:硬件覆蓋


定位:

支持器件:

最近新增了STM32Cube MP1,官方沒有統計上。

庫之間的轉移:

本文就到這里,希望以上內容對你有所幫助!

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5092

    文章

    19177

    瀏覽量

    307688
  • STM32
    +關注

    關注

    2272

    文章

    10924

    瀏覽量

    357582
  • stm32cubemx
    +關注

    關注

    5

    文章

    284

    瀏覽量

    15005
  • HAL庫
    +關注

    關注

    1

    文章

    121

    瀏覽量

    6382
收藏 人收藏

    評論

    相關推薦

    嵌入式機器學習的應用特性與軟件開發環境

    設備和智能傳感器)上,這些設備通常具有有限的計算能力、存儲空間和功耗。本文將您介紹嵌入式機器學習的應用特性,以及常見的機器學習開發軟件與開發環境。 嵌入式機器學習的應用特性與優勢 由于嵌入式
    的頭像 發表于 01-25 17:05 ?173次閱讀
    <b class='flag-5'>嵌入式</b>機器學習的應用特性與<b class='flag-5'>軟件</b>開發環境

    清華大學出版社推出RT-Thread新作,助力嵌入式開發人才培養

    和RT-Thread操作系統》。作為第16本關于RT-Thread的權威著作,本書旨在培養和鍛煉嵌入式系統應用的開發技術,以實踐為主線,全面介紹了基于STM32F1HAL和國產R
    的頭像 發表于 01-16 19:07 ?96次閱讀
    清華大學出版社推出RT-Thread新作,助力<b class='flag-5'>嵌入式</b>開發人才培養

    嵌入式系統開發與硬件的關系 嵌入式系統開發常見問題解決

    嵌入式系統開發與硬件的關系 嵌入式系統是專為特定應用設計的計算機系統,它們通常嵌入在所控制的設備中。這些系統的關鍵特點是它們與硬件的緊密集成,這意味著軟件必須為特定的硬件平臺量身定制。
    的頭像 發表于 12-09 09:38 ?418次閱讀

    HAL嵌入式系統中的應用

    HAL是一種在嵌入式開發中用于屏蔽底層硬件細節、提供統一接口的軟件層。它允許開發者在編寫應用程序時無需關心具體的硬件實現,從而提高了代碼的可移植性和復用性。HAL的主要目的是將硬
    的頭像 發表于 12-02 11:32 ?892次閱讀

    嵌入式學習建議

    對廣大渴望學習嵌入式系統的學子提出幾點基礎階段的學習建議: ①嵌入式系統軟件硬件密切相關,一定要打好軟硬件基礎。其實,只要找到正確的方法,加上努力,任何理工科學生,甚至非理工科學生,都能學好
    發表于 10-22 11:41

    什么是嵌入式?一文讀懂嵌入式主板

    在現代科技浪潮中,嵌入式技術已成為支撐各種智能設備和系統運行的核心力量。那么,究竟什么是嵌入式嵌入式系統,顧名思義,是將計算機的硬件和軟件嵌入
    的頭像 發表于 10-16 10:14 ?1581次閱讀

    EsDA,一站嵌入式軟件

    ,旨在提高嵌入式軟件開發的效率、性能和可擴展性。EsDA全稱是嵌入式系統設計自動化,它是一個由AWorksLP、AWStudio、AXPI、AWTK、ZWS等多種軟件
    的頭像 發表于 09-15 08:10 ?358次閱讀
    EsDA,一站<b class='flag-5'>式</b><b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>

    嵌入式開發常用軟件有哪些?

    軟件上配置STM32微控制器和微處理器硬件和軟件設置。同時也可以用來寫代碼編譯。 6.VMWare Workstation 嵌入式Linux開發,除了裝雙系統之外,還可以裝一個虛擬機
    發表于 09-09 15:22

    一種常用嵌入式開發代碼

    使用開源協議:GPL-2.0varch簡介varch(we-architecture,意為我們的框架)是嵌入式C語言常用代碼模塊,包含了嵌入式中常用的算法庫,數據結構(容器)
    的頭像 發表于 09-04 08:06 ?552次閱讀
    一種常用<b class='flag-5'>嵌入式</b>開發代碼<b class='flag-5'>庫</b>

    七大嵌入式GUI盤點

    LCD設計提供高級支持,極大簡化了LCD設計。它是使用比較廣泛的一款GUI,配合GUI Builder或App Wizard上位機軟件,用起來也比較方便。emWin以C語言源代碼提供,使其成為嵌入式
    發表于 09-02 10:58

    嵌入式軟件開發與AI整合

    嵌入式軟件開發與AI整合是當前技術發展的重要趨勢之一。隨著人工智能技術的快速發展,嵌入式系統越來越多地集成了AI算法,以實現更復雜的智能功能。以下是關于
    的頭像 發表于 07-31 09:25 ?832次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>開發與AI整合

    如何獲取STM32MP157的嵌入式Linux的OpenGL

    請問,如何獲取STM32MP157的嵌入式Linux的OpenGL
    發表于 05-27 07:27

    如何獲取STM32MP157的嵌入式Linux的OpenGL

    請問,如何獲取STM32MP157的嵌入式Linux的OpenGL
    發表于 03-15 07:21

    嵌入式人工智能的就業方向有哪些?

    的發展方向有很多,門檻高低不一樣。下面給大家列舉一些相應崗位所需具備的技能: 一:嵌入式Linux,C語言開發工程師,Linux軟件開發工程師 LinuxC語言開發 LinuxC語言開發進階 Linux
    發表于 02-26 10:17

    嵌入式軟件設計的原則分享

    嵌入式軟件開發如果具有更好的閱讀性、擴展性以及維護性,就需要考慮很多因素。今天給大家分享幾個嵌入式軟件設計的原則。
    發表于 02-25 10:54 ?750次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>設計的原則分享
    百家乐大光明影院| 老虎机| 百家乐官网一般多大码| 百家乐路纸下| 百家乐官网楼梯缆| 二八杠游戏下载| 基础百家乐官网博牌规| 大发888最新网站| 新梦想百家乐官网的玩法技巧和规则| 百家乐赌场论坛在线| 单张百家乐官网论坛| 百家乐平台哪个有在线支付呢| 豪门娱乐网| 百家乐网络真人斗地主| 新濠百家乐官网现金网| 威尼斯人娱乐城 104| 波浪百家乐官网游戏中| 娱乐城开户送体验金| 大家旺百家乐官网的玩法技巧和规则| 360棋牌游戏| 百家乐透明牌靴| 金沙百家乐官网现金网| 威尼斯人娱乐网站安全吗| 财富百家乐官网的玩法技巧和规则| 嘉祥县| 大发888游戏平台 df888ylcxz46| 百家乐官网专用| 百家乐官网视频游戏盗号| 大发888娱乐场开户注册| 做生意必须看风水吗| 百家乐官网高额投注| 罗定市| 大发888娱乐场 888| 百家乐游戏平台架设| 百家乐官网真人游戏投注网 | 百家乐官网实战路| 利高百家乐官网游戏| 大发888娱乐场下载dafaylcdown| 在线百家乐合作| 皇冠博彩网| 足彩大赢家|