那曲檬骨新材料有限公司

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真钱棋牌| 游戏机百家乐庄闲| 百家乐棋牌技巧| 百家乐官网投法| 百乐坊百家乐官网娱乐城| 吴江市| 维也纳娱乐城| 澳门网上| 电动扑克| 明升88| 真钱娱乐城| 娱乐城送钱| 瑞丰国际,| 银河国际娱乐| 足球百家乐系统| 全讯网vc8888.com| 百家乐策略| e世博官方网站| 澳门金莎娱乐城| 百家乐官网闲拉长龙| e世博百家乐官网技巧| 皇冠网百家乐官网平台| 赌球赔率| 百家乐官网如何投注技巧| 太阳城百家乐官网的分数| 百家乐官网园百利宫娱乐城怎么样百家乐官网园百利宫娱乐城如何 | 喜达国际| 百家乐官网投注必胜法| 广州百家乐官网赌场| 百家乐官网最新缆| 云鼎娱乐城优惠活动| 奎屯市| 免费下百家乐官网赌博软件|