精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

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

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

關(guān)注我的朋友中,初學(xué)者比較多,今天就寫點基礎(chǔ)知識。

1寫在前面

陸續(xù)收到一些朋友的問題:

1.我是選擇寄存器開發(fā)STM32,還是標準外設(shè)庫呢?

2.你有STM32L0標準外設(shè)庫嗎?

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

。。。

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

STM32Snippets

Standard Peripheral Library

STM32Cube HAL

STM32Cube LL

下面就寫一下關(guān)于這四種庫的相關(guān)內(nèi)容、以及對比應(yīng)用等。

2

STM32Snippets

什么是STM32Snippets?

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

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

地址:

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

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

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


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

3

Standard Peripheral Library

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

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

標準外設(shè)庫是在寄存器的基礎(chǔ)上進行了一次簡單封裝,主要是面向過程的嵌入式系統(tǒng)開發(fā)人員。

地址:

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

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

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

4

STM32Cube HAL 和 LL

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

LL:Low-Layer,底層庫

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

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

LL庫相對HAL,具有簡單的結(jié)構(gòu),針對之前從事SPL,或寄存器開發(fā)的人員。

地址:

https://www.st.com/stm32cubemx

最近新增了STM32Cube MP1。

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

5

四種庫對比

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

其中:

Portability:可移植性

Optimization :優(yōu)化

Easy:難易程度

Hardware coverage:硬件覆蓋


定位:

支持器件:

最近新增了STM32Cube MP1,官方?jīng)]有統(tǒng)計上。

庫之間的轉(zhuǎn)移:

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5069

    文章

    19021

    瀏覽量

    303380
  • STM32
    +關(guān)注

    關(guān)注

    2266

    文章

    10873

    瀏覽量

    354843
  • stm32cubemx
    +關(guān)注

    關(guān)注

    5

    文章

    280

    瀏覽量

    14758
  • HAL庫
    +關(guān)注

    關(guān)注

    1

    文章

    114

    瀏覽量

    6177
收藏 人收藏

    評論

    相關(guān)推薦

    嵌入式學(xué)習(xí)建議

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

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

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

    一種常用嵌入式開發(fā)代碼

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

    七大嵌入式GUI盤點

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

    嵌入式軟件開發(fā)與AI整合

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

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

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

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

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

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

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

    嵌入式軟件設(shè)計的原則分享

    嵌入式軟件開發(fā)如果具有更好的閱讀性、擴展性以及維護性,就需要考慮很多因素。今天給大家分享幾個嵌入式軟件設(shè)計的原則。
    發(fā)表于 02-25 10:54 ?653次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>設(shè)計的原則分享

    嵌入式軟件開發(fā)和軟件開發(fā)的區(qū)別

    嵌入式軟件開發(fā)和軟件開發(fā)是兩個不同的概念,它們在一些關(guān)鍵方面有著明顯的區(qū)別。嵌入式軟件開發(fā)是指開發(fā)嵌入
    的頭像 發(fā)表于 01-22 15:27 ?2179次閱讀

    基于功能安全的汽車嵌入式軟件單元驗證技術(shù)研究

    隨著汽車嵌入式軟件功能的不斷疊加,軟件復(fù)雜性不斷提升,對汽車嵌入式軟件的安全性提出了更高要求,基于功能安全的
    的頭像 發(fā)表于 01-07 11:27 ?1010次閱讀
    基于功能安全的汽車<b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>單元驗證技術(shù)研究

    基于Rust的嵌入式符合ACID的鍵值數(shù)據(jù)

    surrealkv -- 基于 Rust 的 low level、版本化、嵌入式、符合 ACID 的鍵值數(shù)據(jù)
    的頭像 發(fā)表于 12-28 11:29 ?863次閱讀

    聊聊嵌入式軟件分層

    今天以控制LED閃爍為例,聊聊嵌入式軟件分層
    的頭像 發(fā)表于 12-28 09:22 ?636次閱讀

    嵌入式軟件工程師常用的

    最近我換工作了,看見不同嵌入式軟件工程師用的平臺都不一樣,所以我整理了一下。PlatformIO:多平臺支持:PlatformIO支持多種嵌入式平臺,包括Arduino、ESP8266、ESP32
    的頭像 發(fā)表于 12-24 08:00 ?631次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>工程師常用的

    嵌入式硬件和軟件哪個好?

    方案,要求理解嵌入式系統(tǒng)架構(gòu),有一定的C語言基礎(chǔ),熟悉ARM、protel設(shè)計軟件,有層板開發(fā)經(jīng)驗。 成為優(yōu)秀的嵌入式硬件開發(fā)工程師需具備以下技能:由需求分析至總體方案、詳細設(shè)計的規(guī)
    發(fā)表于 12-05 15:17