伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

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

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

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

STM32標(biāo)準(zhǔn)外設(shè)庫(kù)SPL轉(zhuǎn)換成 Cube LL

黃工的嵌入式技術(shù)圈 ? 來(lái)源:黃工的嵌入式技術(shù)圈 ? 2020-03-08 12:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今天分享幾點(diǎn)內(nèi)容:

1.介紹ST推出的三種庫(kù);

2.直接操作寄存器及三種ST庫(kù)的代碼性能對(duì)比;

3.STM32CubeMX直接生成Cube LL庫(kù)函數(shù)的方法;

4.STM32標(biāo)準(zhǔn)外設(shè)庫(kù)SPL轉(zhuǎn)換成Cube LL的方法;

1介紹ST推出的三種庫(kù)

1.標(biāo)準(zhǔn)外設(shè)庫(kù):Standard Peripheral Libraries,簡(jiǎn)寫SPL.

2.Cube硬件抽象層庫(kù):STM32Cube Hardware Abstraction Layer,簡(jiǎn)寫Cube HAL.

3.Cube底層庫(kù):STM32Cube Low-Layer,簡(jiǎn)寫Cube LL.

開(kāi)發(fā)STM32常見(jiàn)的除了直接讀寫(操作)寄存器之外,就是使用ST推出的庫(kù)函數(shù)進(jìn)行開(kāi)發(fā)。

這三種庫(kù)中最早推出的是標(biāo)準(zhǔn)外設(shè)庫(kù)SPL,所以在推出STM32Cube HAL之前的大部分攻城獅都喜歡使用標(biāo)準(zhǔn)外設(shè)庫(kù)對(duì)STM32進(jìn)行開(kāi)發(fā)。

隨著STM32Cube HAL的推出,很多攻城獅(包括以前的,和新初學(xué)的)就開(kāi)始著手轉(zhuǎn)入使用STM32Cube HAL進(jìn)行開(kāi)發(fā),原因在于可以使用STM32CubeMX這套圖形化的工程直接生成初始化代碼和相應(yīng)工程文件,極大地方便和節(jié)省了攻城獅的時(shí)間。

但是,使用STM32Cube HAL開(kāi)發(fā),很多攻城獅發(fā)現(xiàn)一個(gè)問(wèn)題,使用STM32Cube HAL開(kāi)發(fā)生成的代碼量比標(biāo)準(zhǔn)外設(shè)庫(kù)的要大,而且執(zhí)行的效率也不夠高。所以,ST團(tuán)隊(duì)就著手開(kāi)發(fā)了一套技能滿足標(biāo)準(zhǔn)外設(shè)庫(kù)優(yōu)點(diǎn),又能滿足STM32Cube HAL優(yōu)點(diǎn)的庫(kù),那就是STM32Cube LL。

STM32Cube LL是2017年推出的,目前還處于研發(fā)初期。因此,網(wǎng)上有許多開(kāi)發(fā)者發(fā)現(xiàn)了一些問(wèn)題,不過(guò)相信隨著時(shí)間的推移,這些bug都會(huì)得到解決。

2直接操作寄存器及三種ST庫(kù)的代碼性能對(duì)比

Cube LL庫(kù)的推出,就是因?yàn)榘l(fā)現(xiàn)了【標(biāo)準(zhǔn)外設(shè)庫(kù)】及【Cube HAL庫(kù)】存在的不足才推出。

因此,本節(jié)讓大家了解一下直接操作寄存器、標(biāo)準(zhǔn)外設(shè)庫(kù)SPL、Cube HAL庫(kù)和Cube LL庫(kù)這四種方法的代碼性能對(duì)比。

這個(gè)測(cè)試結(jié)果來(lái)自ST社區(qū),在網(wǎng)上搜索Cube LL都能找到,結(jié)果已經(jīng)很明顯對(duì)比出來(lái)這四種方式的差異(不要說(shuō)你看不來(lái)這個(gè)結(jié)果哦)。

針對(duì)上圖(GPIO翻轉(zhuǎn)、TIM PWM 輸出、ADC DMA 數(shù)據(jù)采集和DMA M2M四組數(shù)據(jù),分別對(duì)Flash 占用量、 SRAM 占用量和執(zhí)行代碼的效率這三項(xiàng)指標(biāo)對(duì)比測(cè)試),我這里簡(jiǎn)單講幾點(diǎn):

1.ROM代碼和RAM占用量最小的屬于直接操作寄存器WED,對(duì)于ROM資源較小的芯片具有優(yōu)勢(shì);

2.執(zhí)行效率最高的也屬于WED,但是代碼編輯、移植性和可讀寫都較差。一般不建議使用該方式(其實(shí)匯編語(yǔ)言比這還有優(yōu)勢(shì))

3.三項(xiàng)指標(biāo)中,除了WED之外,SPL和Cube LL相近(不相上下),也相比Cube HAL就有優(yōu)勢(shì)。所以,SPL和Cube LL是四種之中最佳選擇的兩種。

4.SPL和Cube LL各有特點(diǎn):SPL庫(kù)成熟,可讀性(特別針對(duì)初學(xué)者)很好,查找問(wèn)題也方便;Cube LL可以使用STM32CubeMX圖形化工具直接生產(chǎn)初始化代碼和工程,在這方便也具有明顯優(yōu)勢(shì)。

3STM32CubeMX直接生成Cube LL庫(kù)函數(shù)的方法

這一節(jié)內(nèi)容簡(jiǎn)述一下,主要就是你要學(xué)會(huì)使用STM32CubeMX這個(gè)圖形化工具。

我們可以使用STM32CubeMX這個(gè)工具生產(chǎn)Cube HAL和Cube LL兩種不同庫(kù)的代碼工程,就是需要通過(guò)配置,選擇不同的庫(kù)。

在你相關(guān)配置都就緒,準(zhǔn)備生成代碼工程之前Project -> Settings ->Advanced Settings選擇LL即可(默認(rèn)是HAL)。

零基礎(chǔ)的朋友可以參看下面文字:

1.STM32CubeMX介紹、下載與安裝

2.STM32CubeMX使用方法及功能介紹

3.STM32CubeMX新建工程+基本IO配置過(guò)程

4STM32標(biāo)準(zhǔn)外設(shè)庫(kù)SPL轉(zhuǎn)換成Cube LL的方法

這ST為了使更多攻城獅使用Cube LL庫(kù),專門做了一個(gè)兼容個(gè)轉(zhuǎn)換工具,就是【SPL2LL_Converter】,它可以將你之前標(biāo)準(zhǔn)庫(kù)的代碼轉(zhuǎn)換成Cube LL庫(kù)的代碼,方法比較簡(jiǎn)單。

SPL2LL-Converter網(wǎng)址:

https://www.stmicroelectronics.com.cn/zh/development-tools/spl2ll-converter.html

在上面網(wǎng)址就可找到相關(guān)文檔和下載轉(zhuǎn)換工具。但需要提前安裝一個(gè)叫【ActivePerl】的工具。

activeperl下載地址:

https://www.activestate.com/activeperl/downloads

嫌麻煩的朋友可以到我的百度網(wǎng)盤下載:

http://pan.baidu.com/s/1dFMFwHF

提示:微信公眾號(hào)不支持外鏈接(復(fù)制鏈接到瀏覽器下載),網(wǎng)盤后期有可能失效。

轉(zhuǎn)換的操作比較簡(jiǎn)單,打開(kāi)轉(zhuǎn)換工具,找到需要轉(zhuǎn)換的源代碼文件夾,設(shè)置轉(zhuǎn)換后文件夾,點(diǎn)擊“Migrate”即可開(kāi)始。

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

    關(guān)注

    31

    文章

    5612

    瀏覽量

    130298
  • STM32
    +關(guān)注

    關(guān)注

    2312

    文章

    11180

    瀏覽量

    374215
  • spl
    spl
    +關(guān)注

    關(guān)注

    0

    文章

    22

    瀏覽量

    16788
  • 標(biāo)準(zhǔn)外設(shè)庫(kù)

    關(guān)注

    0

    文章

    16

    瀏覽量

    3790
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    三相三線 380v 電壓能轉(zhuǎn)換成 220v 電壓?jiǎn)幔恳晃闹v清原理、方法與安全規(guī)范

    ?在工業(yè)用電場(chǎng)景中,三相三線380V是常見(jiàn)供電制式,但大量單相設(shè)備、辦公電器、精密儀器僅適配220V電壓。很多人疑惑:三相三線380v電壓能轉(zhuǎn)換成220v電壓?jiǎn)幔看鸢甘强隙ǖ模仨氉裱茖W(xué)
    的頭像 發(fā)表于 03-30 11:09 ?499次閱讀
    三相三線 380v 電壓能<b class='flag-5'>轉(zhuǎn)換成</b> 220v 電壓?jiǎn)幔恳晃闹v清原理、方法與安全規(guī)范

    深度解析SPL階段A/B分區(qū)啟動(dòng):spl_ab.c代碼全拆解

    在嵌入式系統(tǒng)(尤其是 Rockchip 平臺(tái) Android 設(shè)備)中, A/B ( Seamless Update )無(wú)縫更新是保障系統(tǒng)更新不丟數(shù)據(jù)、更新失敗可回滾的核心機(jī)制。而 SPL
    的頭像 發(fā)表于 01-20 07:07 ?9886次閱讀
    深度解析<b class='flag-5'>SPL</b>階段A/B分區(qū)啟動(dòng):<b class='flag-5'>spl</b>_ab.c代碼全拆解

    pdf轉(zhuǎn)換成word文檔格式亂了

    df轉(zhuǎn)換成word文檔格式亂了 ? 將 pdf 轉(zhuǎn)為 word 是常見(jiàn)的操作,但很多人發(fā)現(xiàn)結(jié)果很亂,文字會(huì)移位,字體變化,表格斷裂,圖片偏離原位.這是因?yàn)?pdf 存儲(chǔ)的是最終的排版用于顯示或打印
    的頭像 發(fā)表于 11-22 10:04 ?1239次閱讀

    pdf如何轉(zhuǎn)換成pptx

    df如何轉(zhuǎn)換成pptx ? 將 pdf 轉(zhuǎn)成 powerpoint pptx 文件是很常見(jiàn)的需求,當(dāng)你需要把現(xiàn)有文檔內(nèi)容做成幻燈片時(shí)可以這樣做,本文介紹一些簡(jiǎn)單實(shí)用的步驟,可以用免費(fèi)工具或內(nèi)置軟件
    的頭像 發(fā)表于 11-22 09:42 ?945次閱讀

    國(guó)產(chǎn)MCU開(kāi)始卷開(kāi)發(fā)工具了?McuStudio是對(duì)STM32Cube的拙劣模仿還是真香逆襲?

    STM32Cube配置個(gè)國(guó)產(chǎn)芯片可能還得自己搗鼓底層包,這工具直接就給你整好了。 但也別吹得太神,槽點(diǎn)也得講 ? 底層最后還是調(diào)HAL庫(kù) - 對(duì)于習(xí)慣了寄存器操作、追求極致效率的老法師來(lái)說(shuō),可能覺(jué)得這玩意兒
    發(fā)表于 10-31 10:18

    對(duì)UART0輸入到串口的char型數(shù)據(jù)轉(zhuǎn)換成16進(jìn)制的寄存器常用int型相關(guān)處理

    參賽小隊(duì)名:強(qiáng)強(qiáng)聯(lián)合隊(duì)。報(bào)名編號(hào):CICC1316 通過(guò)UART0接受到鍵盤輸入的數(shù)據(jù)是char型的,這時(shí)候就會(huì)又出現(xiàn)一個(gè)問(wèn)題,如果是char型的數(shù)據(jù),直接轉(zhuǎn)換成int型我們接收到的數(shù)據(jù)就變成
    發(fā)表于 10-31 07:58

    立即在GitHub上搶先體驗(yàn)面向STM32U5的最新STM32Cube HAL更新

    其滿足您的需求。 如何獲取預(yù)覽版本 面向STM32U5系列的STM32Cube HAL2預(yù)覽版已在GitHub代碼庫(kù)STM32CubeU5-V2-Preview中開(kāi)放。 更新后的HAL
    的頭像 發(fā)表于 10-20 17:12 ?1130次閱讀

    怎么用LL命令讀取SPI?

    用cubemx構(gòu)建工程,MDK開(kāi)發(fā),這個(gè)項(xiàng)目采用AD4020 20位2MSPS外置ADC,ADC轉(zhuǎn)換速率高達(dá)0.5us,而STM32H5用HAL的HAL_SPI_Receive(&
    發(fā)表于 09-09 08:17

    STM32 學(xué)習(xí)達(dá)標(biāo)標(biāo)準(zhǔn):4 個(gè)維度,判斷你是否真正合格

    最近在網(wǎng)址經(jīng)常看到這樣的帖子:STM32怎么就算是精通了、怎么就是完全入門了、要學(xué)到什么程度才算合格?老實(shí)說(shuō),這事真沒(méi)絕對(duì)標(biāo)準(zhǔn),但只懂外設(shè)原理、會(huì)調(diào)用庫(kù)函數(shù)肯定只是入門級(jí)。就像學(xué)開(kāi)車,知道方向盤剎車
    的頭像 發(fā)表于 08-11 16:36 ?818次閱讀
    <b class='flag-5'>STM32</b> 學(xué)習(xí)達(dá)標(biāo)<b class='flag-5'>標(biāo)準(zhǔn)</b>:4 個(gè)維度,判斷你是否真正合格

    .elf 轉(zhuǎn)換成.img 后,如何知道SPI flash 中的變量地址呢?

    它的 .map 中找到內(nèi)存映射項(xiàng)目構(gòu)建完成后的文件,如下圖。 數(shù)據(jù).abcDscr 0x40030b00 0x100 ./usbabc.o 但是.elf 轉(zhuǎn)換成.img 后,如何知道SPI flash 中的變量地址呢?
    發(fā)表于 07-18 07:44

    fn_u-boot-spl.bin和u-boot-spl.bin區(qū)別是什么?請(qǐng)問(wèn)如何從u-boot-spl.bin生成fn_u-boot-spl.bin?

    fn_u-boot-spl.bin = bootrom頭 + u-boot-spl.bin ;生成過(guò)程見(jiàn)后面代碼片段; bootrom頭(格式詳見(jiàn)) + u-boot-spl.bin(標(biāo)準(zhǔn)
    發(fā)表于 07-11 07:58

    【米爾-STM32MP257開(kāi)發(fā)板試用體驗(yàn)】——測(cè)試米爾-STM32MP257開(kāi)發(fā)板外設(shè)功能

    /temp 轉(zhuǎn)換成實(shí)際的溫度 除以1000 就是49121/1000 = 49度 因?yàn)?b class='flag-5'>STM32MP257是雙核,所以查看雙核溫度的指令為 cat /sys/class/thermal
    發(fā)表于 07-07 18:22

    STM32F4標(biāo)準(zhǔn)外設(shè)庫(kù)資料

    stm32f4xx.h,標(biāo)準(zhǔn)外設(shè)庫(kù)
    發(fā)表于 06-08 09:49 ?5次下載

    GP9301B將0V到10V的模擬電壓輸入,線性轉(zhuǎn)換成0%-100%占空比PWM信號(hào)輸出

    ? GP9301B將0V到10V的模擬電壓輸入,線性轉(zhuǎn)換成0%-100%占空比的PWM信號(hào)輸出。? GP9301BM將0V到10V的模擬電壓輸入,線性轉(zhuǎn)換成0%-100%占空比的PWM信號(hào),并且將
    發(fā)表于 05-29 10:15 ?0次下載

    基于STM32 HAL庫(kù)標(biāo)準(zhǔn)庫(kù)的esp8266接入機(jī)智云方案(二)

    在《基于STM32HAL庫(kù)標(biāo)準(zhǔn)庫(kù)的esp8266接入機(jī)智云方案(一)》中,我們?cè)敿?xì)介紹了硬件連接和機(jī)智云客戶端的創(chuàng)建。本篇將重點(diǎn)講解如何下載代碼、分析下載的代碼,并直接使用這些代碼連
    的頭像 發(fā)表于 05-28 18:02 ?1557次閱讀
    基于<b class='flag-5'>STM32</b> HAL<b class='flag-5'>庫(kù)</b>與<b class='flag-5'>標(biāo)準(zhǔn)</b><b class='flag-5'>庫(kù)</b>的esp8266接入機(jī)智云方案(二)