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

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

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

介紹一篇基于DMAMUX同步事件的應用演示

單片機 ? 來源:茶話MCU ? 作者: Miler ? 2021-08-14 14:55 ? 次閱讀

STM32家族中的很多系列,比如STM32G0/STM32G4/STM32L4+/STM32H7等都內(nèi)置了DMAMUX模塊。有了它一方面使得DMA請求與DMA控制器之間的映射關(guān)系更為靈活方便,同時也大大拓展了DMA請求事件,不再局限于外設(shè)事件,比方可以基于GPIO的外部中斷事件、或者DMA事件本身來觸發(fā)DMA傳輸。另外,DMA傳輸?shù)膶崿F(xiàn)還可以基于其它觸發(fā)事件來同步其操作,即DMA傳輸?shù)膶崿F(xiàn)需要借助其它同步事件來真正啟動。

本文就基于STM32G4芯片簡單介紹下該話題,這里要實現(xiàn)的功能大致是這樣的:片內(nèi)低功耗定時器LPTIM1的定時輸出作為DMAMUX的DMA同步輸入事件,該同步事件觸發(fā)UART的DMA傳輸,通過UART輸出一段字符。

本演示例程基于STM32G4系列的Nucleo板進行。低功耗定時器LPTIM工作在PWM輸出模式,DMAMUX基于LPTIM每次的定時輸出事件為UART2申請一定數(shù)目的DMA請求,然后DMA將數(shù)據(jù)從內(nèi)存送到UART的數(shù)據(jù)寄存器并最終將內(nèi)容顯示在PC串口終端。

下面就直接使用STM32CubeMx進入配置過程。

通過CubeMx神器做基本的初始化配置【RCC配置此處就省略了】。

LPTIM1的參考配置如下,具體應用時請結(jié)合實際情況來定,這里只需能產(chǎn)生周期性定時輸出即可。

UART2外設(shè)沒有什么特別要提醒的,這里就不貼截圖了。我們重點看看有關(guān)UART TX的DMA傳輸?shù)南嚓P(guān)配置。

上圖中藍色圈里的勾選框?qū)τ诒緫醚菔静皇潜仨毠催x的,勾選了也沒關(guān)系,不會對本演示產(chǎn)生影響。DMA請求數(shù)設(shè)置為21,表示每檢測到1個同步事件后DMAMUX為UART傳輸申請21個DMA請求,以批量傳輸21個字符“STM32 DMA SYNCDEMO ”。

完成圖形化配置后,生成初始化代碼并添加必要的用戶代碼。

#definePeriodValue (1000)

#define PulseValue (500)

#define Size (21)

uint8_tpData[Size]={‘S’,‘T’,‘M’,‘3’,‘2’,‘ ’,‘D’,‘M’,‘A’,‘ ’,

‘S’,‘Y’,‘N’,‘C’,‘’,‘D’,‘E’,‘M’,‘O’,‘ ’,‘ ’};

HAL_LPTIM_PWM_Start(&hlptim1, PeriodValue, PulseValue) ;

HAL_UART_Transmit_DMA(&huart2, pData, Size);

編譯運行,驗證結(jié)果。

45dfbd00-fc1f-11eb-9bcf-12bb97331649.png

代碼運行后,可以通過示波器看到LPTIM的周期性PWM輸出,同時PC端也可以看到如上面截圖所示的周期性呈現(xiàn)的字符串。

OK,本次基于DMAMUX同步事件的應用演示就介紹到這里,供君參考,更多細節(jié)還請閱讀STM32相關(guān)技術(shù)手冊。

編輯:jq

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

    關(guān)注

    113

    文章

    6273

    瀏覽量

    185518
  • PWM
    PWM
    +關(guān)注

    關(guān)注

    114

    文章

    5196

    瀏覽量

    214373
  • PC
    PC
    +關(guān)注

    關(guān)注

    9

    文章

    2097

    瀏覽量

    154414
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4809

    瀏覽量

    68819

原文標題:基于STM32 DMAMUX DMA同步事件的應用示例

文章出處:【微信號:aidanpianji,微信公眾號:單片機】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    氮化鎵電源芯片和同步整流芯片介紹

    氮化鎵電源芯片和同步整流芯片在電源系統(tǒng)中猶如對默契的搭檔,通過緊密配合,顯著提升電源效率。在開關(guān)電源的工作過程中,氮化鎵電源芯片憑借其快速的開關(guān)速度和高頻率的開關(guān)能力,能夠迅速地切換電路狀態(tài),實現(xiàn)
    的頭像 發(fā)表于 01-15 16:08 ?102次閱讀

    同步電機的主要特性是什么?簡單介紹

    同步電機是種交流電機,其轉(zhuǎn)子轉(zhuǎn)速與電網(wǎng)頻率保持恒定的比例關(guān)系,即同步轉(zhuǎn)速。這種電機在電力系統(tǒng)、工業(yè)驅(qū)動、發(fā)電機組等領(lǐng)域有著廣泛的應用。以下是同步電機的
    的頭像 發(fā)表于 10-22 09:59 ?409次閱讀

    同步開關(guān)對多功能講解及演示

    案例簡介本案例主要講解E860-DTU(8080-400SL)(以下簡稱同步開關(guān))產(chǎn)品的主多從功能及使用案例,也就是平時所說的對多模式。設(shè)備可通過配置工具配置
    的頭像 發(fā)表于 07-26 08:21 ?362次閱讀
    <b class='flag-5'>同步</b>開關(guān)<b class='flag-5'>一</b>對多功能講解及<b class='flag-5'>演示</b>

    【《大語言模型應用指南》閱讀體驗】+ 基礎(chǔ)

    今天開始學習《大語言模型應用指南》第一篇——基礎(chǔ),對于人工智能相關(guān)專業(yè)技術(shù)人員應該可以輕松加愉快的完成此閱讀,但對于我還是有許多的知識點、專業(yè)術(shù)語比較陌生,需要網(wǎng)上搜索學習更多的資料才能理解書中
    發(fā)表于 07-25 14:33

    TSN時鐘同步 | PTP對時案例演示——基于NXP i.MX 8M Plus

    將該時間信息添加到該數(shù)據(jù)幀中。從節(jié)點獲取這些時間信息,并計算從節(jié)點本地時鐘與主時鐘的時間偏差和網(wǎng)絡節(jié)點之間的傳輸延時,對本地時鐘進行糾正,使之與主節(jié)點時鐘同步。 開發(fā)環(huán)境 本文主要介紹的是基于創(chuàng)龍科技
    發(fā)表于 07-10 10:28

    【《計算》閱讀體驗】+內(nèi)容豐富的介紹計算的科普書

    閱讀實體書,捧在手里翻頁的感覺完全不樣。 從介紹來看作者也是大牛 開始看到書名的時候以為是講計算理論的專業(yè)書,拿到書本看到介紹和目錄之后才發(fā)現(xiàn)其實是
    發(fā)表于 06-27 23:18

    京準電鐘 | NTP網(wǎng)絡時間同步協(xié)議原理及其應用介紹

    京準電鐘 NTP網(wǎng)絡時間同步協(xié)議原理及其應用介紹
    的頭像 發(fā)表于 06-12 15:22 ?546次閱讀
    京準電鐘 | NTP網(wǎng)絡時間<b class='flag-5'>同步</b>協(xié)議原理及其應用<b class='flag-5'>介紹</b>

    請問STM32L4R5ZI的DMA/DMAMUX是怎么管理請求?

    原來的STM32系列,比如F1,是沒有DMAMUX這個東西的,DMA1的1通道2通道具體對應什么樣的請求,有個專門的對應表。但是現(xiàn)在的DMAMUX加進來以后,對于89個外設(shè)請求,并沒有地方說明什么請求對應哪
    發(fā)表于 04-28 06:19

    STM32L4R5的DMAMUX異常原因?

    __HAL_RCC_DMA1_CLK_ENABLE(); __HAL_RCC_DMAMUX1_CLK_ENABLE(); /*##-3- Configure the DMA
    發(fā)表于 04-19 06:36

    STM32G070的DMA功能,如何實現(xiàn)外部中斷觸發(fā)DMA傳輸數(shù)據(jù)到IO口上?

    ); HAL_NVIC_EnableIRQ(DMA1_Channel1_IRQn); /*##-3- Configure and enable the DMAMUX Request
    發(fā)表于 04-01 08:24

    關(guān)于STM32 DMAMUX模塊具體的應用示例代碼

    有人通過公眾號微信留言,詢問是否有關(guān)于STM32 DMAMUX模塊具體的應用示例代碼。同時,個人也發(fā)現(xiàn),雖然STM32片內(nèi)的DMAMUX不是什么新模塊,似乎還是很多人并不太熟悉。這里借機聊聊這方面的內(nèi)容,重點演示相關(guān)功能的實現(xiàn),
    的頭像 發(fā)表于 03-25 09:15 ?2514次閱讀
    關(guān)于STM32 <b class='flag-5'>DMAMUX</b>模塊具體的應用示例代碼

    永磁同步電機全速域矢量控制的全過程介紹

    直都想知道永磁同步電機的轉(zhuǎn)速從零增加到極限這個過程會發(fā)生什么,這篇文章介紹下永磁同步電機全速域矢量控制的全過程,即電機的轉(zhuǎn)速從零開始逐漸
    的頭像 發(fā)表于 03-15 09:29 ?1474次閱讀
    永磁<b class='flag-5'>同步</b>電機全速域矢量控制的全過程<b class='flag-5'>介紹</b>

    同步電機和開關(guān)磁阻的操作方法

    同步電機和開關(guān)磁阻操作 同步電機是種重要的電動機類型,具有高效率和高功率密度的特點。而開關(guān)磁阻操作是種控制同步電機轉(zhuǎn)動的方法。本文將詳細
    的頭像 發(fā)表于 02-01 14:31 ?1140次閱讀

    永磁同步電機的優(yōu)缺點有哪些 三相永磁同步電機接線方法

    和特性,同時也存在些缺點和限制。下面是對永磁同步電機的優(yōu)缺點以及三相永磁同步電機的接線方法進行介紹、永磁
    的頭像 發(fā)表于 01-31 14:38 ?5296次閱讀

    高頻同步DC-DC降壓變頻器FP6397典型應用電路介紹

    電子發(fā)燒友網(wǎng)站提供《高頻同步DC-DC降壓變頻器FP6397典型應用電路介紹》資料免費下載
    發(fā)表于 01-24 09:26 ?0次下載