一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

STM32U5 LPBAM模式介紹

jf_pJlTbmA9 ? 來源:STM32單片機 ? 作者:STM32單片機 ? 2023-10-26 17:59 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、前言

LPBAM 全稱為 low-power background autonomous mode,系統(tǒng)時鐘可以在進入低功耗模式之后打開或關(guān)閉,可以觸發(fā) DMA 請求,可以在 stop0,stop1,stop2 模式下使用。在 stop 模式下除了 LSI 和 LSE 以外其他時鐘都會關(guān)閉,但 MSIK 和 HSI16 可以被臨時使能,以支持 DMA 傳輸,這就是 LPBAM 的特點。

另外,LPBAM 需要 DMA 來進行配合,U5 系列的 DMA 有 Linked List 功能,也就是說DMA 可以完成鏈表設(shè)計好的任務(wù)。在初始化的時候,以鏈表模式設(shè)置好 DMA 相關(guān)寄存器,可以通過鏈表模式完成內(nèi)存到內(nèi)存,或者內(nèi)存和外設(shè)寄存器之間的數(shù)據(jù)傳輸。

由于 LBAM 的特性,在進行低功耗應(yīng)用設(shè)計時,可以使用 LPBAM 大大減少功耗,提升產(chǎn)品的低功耗性能。比如,可以在 stop2 模式下進行串口收發(fā),ADC 采集任務(wù)等等。

本文將介紹如何使用 CubeMX,配置 DMA Linked List,在低功耗模式下,使用LPBAM 進行 GPIO Toggle。

2. 準(zhǔn)備工作

2.1 環(huán)境準(zhǔn)備

測試硬件:B-U585I-IOT02A 開發(fā)板

測試開發(fā)環(huán)境:IAR 8.50.1

CubeMX 版本:6.30.0

wKgaomUD6bmACwKIAAJ8OrDNmt0099.png

2.2 設(shè)計思路

如圖所示,我們先在內(nèi)存中定義好需要寫入 GPIO 寄存器的數(shù)值,其中 Set GPIO 就將數(shù)據(jù)寫入 BSRR 寄存器,Reset GPIO 就將數(shù)據(jù)寫入 BRR 寄存器。LPDMA 設(shè)置兩個節(jié)點,一個去 Set GPIO,另一個 Reset GPIO,然后由軟件觸發(fā),由 LPTIM1 CH1 的上升沿觸發(fā) LPDMA 第一個節(jié)點進行動作,LPTIM1 CH1 的下降沿觸發(fā) LPDMA 第二個節(jié)點進行動作。

LPTIM1 設(shè)置使用 LSI 32KHz 為時鐘,頻率為 32KHz,占空比為 50%的 PWM 波輸出,也就是說 GPIO 會以 500ms 的頻率進行 toggle。

wKgaomUD6bqAF3FiAACEZEvodEE825.png

3.Step By Step

wKgZomUD6byACbIEAAJaQm8MCEI219.png
wKgaomUD6b2AQmGOAAG2VqbYUSc989.png
wKgZomUD6b-AU2KsAAGDHzydsbo171.png
wKgZomUD6cGAEMQ1AAPVIyGRIwk720.png
wKgaomUD6cKAHNqVAAb4w9JGMpY897.png
wKgZomUD6cSAJ1-KAAFWYjxNsVU481.png
wKgZomUD6cWABo-pAAHCZ1-FRMg791.png
wKgaomUD6caAW0PmAAGiG0wBJ24929.png
wKgZomUD6ciAeWyuAAC8zOcS_Uc907.png
wKgaomUD6cmAPkK8AADEErXqEu0028.png
wKgZomUD6cqAYPLbAADn_YeFwBw382.png
wKgaomUD6cyAVAztAAF7sGFUK2E091.png
wKgaomUD6c6AAhKcAAGEhkL6bRg719.png
wKgaomUD6c-AFMSDAAD7102_KBc085.png
wKgZomUD6dCAOtY3AAFhUJgu6Fs840.png

STEP10-1:代碼修改 main.c

wKgaomUD6dKAcfr3AAFBUuTV-iY719.png
wKgZomUD6dOAFXUpAAF33VtXhjE161.png

STEP10-2:代碼修改 main.h

wKgZomUD6dWAM_v4AAA6ZN7v61o960.png

STEP10-3:代碼修改 stm32u5xx_it.c

wKgaomUD6deASBGoAACU-QRQyMY216.png

STEP10-4:代碼修改 linked_list.c

wKgaomUD6dmAQaVVAAA-_ZkANc0465.png

STEP10-5:stm32u5xx_hal_msp.c

wKgZomUD6dqAS8ThAAATdFDDAWk285.png

wKgZomUD6dyARzTuAAFAAq5txTw296.png

STEP11:

link file 修改 : stm32u585xx_flash.icf

wKgaomUD6d2AV6hLAABJyQ2muVg039.png

修改完后,編譯工程,在按下 USER BUTTON 后,系統(tǒng)將進入 STOP2 模式, 板載 LED 會停止toggle,但是 LPGPIO 控制的 LED 仍然會繼續(xù) toggle。

4、總結(jié)

本文介紹了 LPBAM 模式,以及如何使用 CubeMX 方便地配置 DMA Linked List,最后完成了在 CPU 進入 Stop2 模式下的 GPIO toggle 任務(wù)。LPBAM 模式將會在打造超低功耗的產(chǎn)品中發(fā)揮非常重要的作用。

文檔中所用到的工具及版本

測試工具版本信息:

? IAR:8.50.1

? CubeMX:6.30.0

來源:STM32單片機
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進行處理

審核編輯 黃宇

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

    關(guān)注

    2293

    文章

    11031

    瀏覽量

    364689
  • 模式
    +關(guān)注

    關(guān)注

    0

    文章

    65

    瀏覽量

    13624
  • CubeMx
    +關(guān)注

    關(guān)注

    0

    文章

    31

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    請問STM32U5不支持ST-LINK v2怎么辦?

    STM32U5不支持ST-LINK v2怎么辦?
    發(fā)表于 06-09 07:59

    STM32U5 IWDG的提前喚醒中斷無法在STOP模式下觸發(fā)怎么解決?

    我使用的是STM32U585系列芯片,開啟了IWDG,并在運行模式下測試提前喚醒中斷正常觸發(fā),但在進入STOP2模式后,提前喚醒中斷無法觸發(fā)導(dǎo)致無法喂狗,看門狗超時后芯片復(fù)位。 手冊中寫道IWDG
    發(fā)表于 04-27 08:05

    請問STM32U3系列的定位是怎樣的?

    領(lǐng)先的每毫瓦 Coremark分數(shù)117。這幾乎是意法半導(dǎo)體之前 STM32U5系列效率的兩倍,是STM32L4系列的五倍。
    發(fā)表于 04-25 07:05

    STM32U5 IWDG的提前喚醒中斷無法在STOP模式下觸發(fā)怎么解決?

    我使用的是STM32U585系列芯片,開啟了IWDG,并在運行模式下測試提前喚醒中斷正常觸發(fā),但在進入STOP2模式后,提前喚醒中斷無法觸發(fā)導(dǎo)致無法喂狗,看門狗超時后芯片復(fù)位。 手冊中寫道IWDG
    發(fā)表于 04-24 07:50

    STM32U5驅(qū)動庫從1.6.0更新至1.7.0本可以正常運行的代碼出現(xiàn)問題了,怎么處理?

    我于近期更新了CUBEMXIDE為1.18.0,以前的代碼工程(STM32U5_1.6.0)提示說有新驅(qū)動庫(STM32U5_1.7.0)可以使用,隨即我便更新了驅(qū)動庫,然后燒錄出現(xiàn)問題,調(diào)試發(fā)現(xiàn)
    發(fā)表于 04-23 07:51

    請問STM32U3系列的定位是怎樣的?

    領(lǐng)先的每毫瓦 Coremark分數(shù)117。這幾乎是意法半導(dǎo)體之前 STM32U5系列效率的兩倍,是STM32L4系列的五倍。
    發(fā)表于 04-23 06:45

    STM32U5 IWDG的提前喚醒中斷無法在STOP模式下觸發(fā)怎么解決?

    我使用的是STM32U585系列芯片,開啟了IWDG,并在運行模式下測試提前喚醒中斷正常觸發(fā),但在進入STOP2模式后,提前喚醒中斷無法觸發(fā)導(dǎo)致無法喂狗,看門狗超時后芯片復(fù)位。 手冊中寫道IWDG
    發(fā)表于 04-22 08:14

    STM32U5?(超低功耗MCU,支持TinyML)全面解析

    ,STM32U5可運行量化后的MobileNetV1模型,實現(xiàn)每秒20+幀的實時分類(如工業(yè)缺陷檢測)。功耗表現(xiàn) :運行TinyML任務(wù)時,結(jié)合LPBAM模式可將平均功耗控制在100μA以下,適合電池供電設(shè)備。三
    的頭像 發(fā)表于 04-08 17:38 ?1708次閱讀
    <b class='flag-5'>STM32U5</b>?(超低功耗MCU,支持TinyML)全面解析

    STM32U5如何設(shè)置才能保證LPBAM和RUN模式下的應(yīng)用程序正常使用呢?

    = 0x08000000,LENGTH = 2048K}請問,必須如上圖這樣設(shè)置才可以正常使用LPBAM嗎,如果我的應(yīng)用程序占用RAM過大,需要使用大量的RAM空間,如何設(shè)置才能保證LPBAM和RUN模式下的應(yīng)用程序正常使用呢
    發(fā)表于 03-10 08:21

    STM32U5偶爾出現(xiàn)無法進入shutdown模式,為什么?

    mode */ HAL_PWREx_EnterSHUTDOWNMode();}請問,通過上述代碼進入shutdown模式,偶爾會出現(xiàn)進入失敗的情況,現(xiàn)象是功耗沒有降下去,并且IO口沒有被重置,我在進入
    發(fā)表于 03-07 07:46

    STM32U5驅(qū)動庫從1.6.0更新至1.7.0后,LPBAM的一個庫接口返回錯誤是怎么回事?

    近期更新了CUBEMXIDE為1.18.0,以前的代碼工程(STM32U5_1.6.0)提示說有新驅(qū)動庫(STM32U5_1.7.0)可以使用,隨即我便更新了驅(qū)動庫,然后燒錄出現(xiàn)問題,調(diào)試發(fā)現(xiàn)
    發(fā)表于 03-07 07:35

    STM32項目實戰(zhàn):基于STM32U5的智能大棚溫控系統(tǒng)(LVGL),附項目教程/源碼

    《智能大棚溫控系統(tǒng)_STM32U5》項目完整文檔、項目源碼,點擊下方鏈接免費領(lǐng)取。項目資料領(lǐng)取https://s.c1ns.cn/F5XyUSTM32項目實戰(zhàn)之“智能大棚溫控系統(tǒng)
    的頭像 發(fā)表于 11-13 17:08 ?1909次閱讀
    <b class='flag-5'>STM32</b>項目實戰(zhàn):基于<b class='flag-5'>STM32U5</b>的智能大棚溫控系統(tǒng)(LVGL),附項目教程/源碼

    STM32項目實戰(zhàn):基于STM32U5的火災(zāi)報警系統(tǒng)(LVGL),附項目教程/源碼

    《火災(zāi)報警系統(tǒng)_STM32U5》項目完整文檔、項目源碼,點擊下方鏈接免費領(lǐng)取。項目資料領(lǐng)取https://s.c1ns.cn/F5XyUSTM32項目實戰(zhàn)之“火災(zāi)報警系統(tǒng)”(基于STM32U5)今天
    的頭像 發(fā)表于 11-13 14:18 ?1866次閱讀
    <b class='flag-5'>STM32</b>項目實戰(zhàn):基于<b class='flag-5'>STM32U5</b>的火災(zāi)報警系統(tǒng)(LVGL),附項目教程/源碼

    STM32項目實戰(zhàn):基于STM32U5的智能燈光控制系統(tǒng)(LVGL),附項目教程/源碼

    《智能燈光控制系統(tǒng)_STM32U5》項目完整文檔、項目源碼,點擊免費領(lǐng)取。項目資料領(lǐng)?。篽ttps://s.c1ns.cn/F5XyUSTM32項目實戰(zhàn)之“智能燈光控制系統(tǒng)”(基于STM32U5
    的頭像 發(fā)表于 11-07 18:50 ?2396次閱讀
    <b class='flag-5'>STM32</b>項目實戰(zhàn):基于<b class='flag-5'>STM32U5</b>的智能燈光控制系統(tǒng)(LVGL),附項目教程/源碼

    X-CUBE-CLASSB以及生態(tài)系統(tǒng)為何如此重要

    ???????? X-CUBE-STL目前支持STM32MP1、STM32U5、STM32L5、STM32H5STM32WL。實
    的頭像 發(fā)表于 11-07 14:01 ?810次閱讀