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

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

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

stm32 LL庫(kù)開發(fā)-DMA使用方法

冬至子 ? 來(lái)源:Vulcan Matrix ? 作者:Vulcan ? 2023-10-26 14:58 ? 次閱讀

本文以stm32 F303K8為例,不同型號(hào)的DMA配置方法略有不同。

本文設(shè)計(jì)的實(shí)驗(yàn)如下:通過(guò)USART2接收數(shù)據(jù),并通過(guò)DMA將串口接受數(shù)據(jù)循環(huán)存入長(zhǎng)度為100的uint8型數(shù)組。

思維導(dǎo)圖總覽:

圖片

1- 時(shí)鐘配置

圖片

有stm32基本知識(shí)應(yīng)該知道Stm32的每個(gè)外設(shè)在使用前都需要開啟其時(shí)鐘,否則模塊不運(yùn)行。

2 - DMA配置

使用DMA前要確定外設(shè)與DMA連接的通道,不用系列芯片硬件設(shè)計(jì)略有不同,因此要去查對(duì)應(yīng)型號(hào)的參考手冊(cè)。

圖片

F303K8上USART2_RX的請(qǐng)求連接在DMA1的Channel6上。后續(xù)的配置都圍繞對(duì)DMA1的Channel6的配置。

DMA的結(jié)構(gòu)如下,下圖截取自F4系列的數(shù)據(jù)手冊(cè),F(xiàn)3的DMA結(jié)構(gòu)與F1的相同,但不影響借用F4的DMA結(jié)構(gòu)圖對(duì)配置方法進(jìn)行理解。

圖片

要配置的內(nèi)容及API如下:

圖片

圖片

這里沒(méi)有使用DMA的中斷,因此沒(méi)有對(duì)具體的中斷進(jìn)行使能。

3 - 使能外設(shè)發(fā)出DMA請(qǐng)求

圖片

DMA是在外設(shè)或軟件Requst之后才會(huì)發(fā)起傳輸,所以要使能外設(shè)發(fā)出DMA請(qǐng)求,這里是USART2_RX的請(qǐng)求。

聲明:本文內(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)投訴
  • STM32
    +關(guān)注

    關(guān)注

    2262

    文章

    10846

    瀏覽量

    353660
  • dma
    dma
    +關(guān)注

    關(guān)注

    3

    文章

    554

    瀏覽量

    100205
  • 串口中斷
    +關(guān)注

    關(guān)注

    0

    文章

    64

    瀏覽量

    13824
  • USART串口
    +關(guān)注

    關(guān)注

    0

    文章

    32

    瀏覽量

    6791
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    STM32標(biāo)準(zhǔn)庫(kù)、HAL庫(kù)LL庫(kù)介紹

    我們?cè)谶M(jìn)行STM32開發(fā)的時(shí)候,使用寄存器進(jìn)行開發(fā)的終究是少數(shù),大多數(shù)人還是習(xí)慣用庫(kù)函數(shù)進(jìn)行開發(fā)。到目前為止,有標(biāo)準(zhǔn)外設(shè)庫(kù)、HAL
    發(fā)表于 06-21 15:13 ?1.3w次閱讀
    <b class='flag-5'>STM32</b>標(biāo)準(zhǔn)<b class='flag-5'>庫(kù)</b>、HAL<b class='flag-5'>庫(kù)</b>和<b class='flag-5'>LL</b><b class='flag-5'>庫(kù)</b>介紹

    【NUCLEO-L476RG LL庫(kù)開發(fā)STM32LL庫(kù)開發(fā)使用指南

    下載地址:http://pan.baidu.com/s/1c0wjL5m 一樓二樓是具體使用方法。 已完,上傳文檔和工程模板: STM32 LL庫(kù)使用指南.pdf
    發(fā)表于 07-02 03:03

    STM32 LL庫(kù)使用方法是什么

    LL庫(kù)有哪些應(yīng)用?LL驅(qū)動(dòng)程序功能有哪些?LL庫(kù)使用方法是什么?
    發(fā)表于 10-26 06:31

    STM32 LL庫(kù)使用指南

    STM32 LL庫(kù)使用指南
    發(fā)表于 01-23 17:31 ?225次下載

    STM32的HAL與LL庫(kù)能共同使用(混用)嗎?

    STM32的HAL和LL庫(kù)能共同使用(混用)嗎?
    的頭像 發(fā)表于 02-28 16:57 ?1.4w次閱讀

    講講開發(fā)STM32的四種庫(kù)

    1.我是選擇寄存器開發(fā)STM32,還是標(biāo)準(zhǔn)外設(shè)庫(kù)呢? 2.你有STM32L0標(biāo)準(zhǔn)外設(shè)庫(kù)嗎? 3.HAL
    的頭像 發(fā)表于 02-10 10:16 ?1w次閱讀
    講講<b class='flag-5'>開發(fā)</b><b class='flag-5'>STM32</b>的四種<b class='flag-5'>庫(kù)</b>

    STM32四種庫(kù)對(duì)比:寄存器、標(biāo)準(zhǔn)外設(shè)庫(kù)、HAL、LL

    1.我是選擇寄存器開發(fā)STM32,還是標(biāo)準(zhǔn)外設(shè)庫(kù)呢? 2.你有STM32L0標(biāo)準(zhǔn)外設(shè)庫(kù)嗎? 3.HAL庫(kù)
    發(fā)表于 03-05 06:17 ?50次下載
    <b class='flag-5'>STM32</b>四種<b class='flag-5'>庫(kù)</b>對(duì)比:寄存器、標(biāo)準(zhǔn)外設(shè)<b class='flag-5'>庫(kù)</b>、HAL、<b class='flag-5'>LL</b>

    STM32G031K LL庫(kù)使用 - GPIO

    最近使用STm32G031K6做一款I(lǐng)OT產(chǎn)品,選擇了用最新LL庫(kù)進(jìn)行開發(fā),因?yàn)橹淠菍?duì)LL庫(kù)
    發(fā)表于 12-02 17:06 ?16次下載
    <b class='flag-5'>STM32</b>G031K <b class='flag-5'>LL</b><b class='flag-5'>庫(kù)</b>使用 - GPIO

    STM32CubeMX 實(shí)戰(zhàn)教程:看門狗實(shí)驗(yàn)(LL 庫(kù)

    LL 庫(kù)】詳細(xì)講述了 STM32CubeMX IWDG 和 WWDG 配置方法使用方法,內(nèi)附圖文及代碼。
    發(fā)表于 12-05 14:21 ?21次下載
    <b class='flag-5'>STM32</b>CubeMX 實(shí)戰(zhàn)教程:看門狗實(shí)驗(yàn)(<b class='flag-5'>LL</b> <b class='flag-5'>庫(kù)</b>)

    LL庫(kù)串口+DMA

    的資料少之又少??!自己做個(gè)記錄。 使用cubemx可以直接生產(chǎn)LL庫(kù)的代碼(我的工程里是hal庫(kù)LL庫(kù)混用的),
    發(fā)表于 12-27 19:31 ?19次下載
    <b class='flag-5'>LL</b><b class='flag-5'>庫(kù)</b>串口+<b class='flag-5'>DMA</b>

    使用LL庫(kù)開發(fā)STM32:GPIO口與外部中斷

    文章目錄目的輸出與控制輸入與端口值讀取外部中斷總結(jié)目的GPIO口使用是單片機(jī)開發(fā)中最簡(jiǎn)單的一塊,STM32的GPIO口無(wú)論是使用HAL庫(kù)還是LL庫(kù)
    發(fā)表于 01-13 16:13 ?13次下載
    使用<b class='flag-5'>LL</b><b class='flag-5'>庫(kù)</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>STM32</b>:GPIO口與外部中斷

    STM32Cbue LL庫(kù)中巧妙運(yùn)用“靜態(tài)內(nèi)聯(lián)”

    STM32的標(biāo)準(zhǔn)外設(shè)庫(kù)、HAL、LL軟件庫(kù),都有很多巧妙之處值得大家借鑒。 今天講講STM32Cbue
    發(fā)表于 08-14 14:30 ?1098次閱讀

    STM32 HAL庫(kù)的功能和使用方法 STM32 HAL庫(kù)和標(biāo)準(zhǔn)庫(kù)的區(qū)別

    和可維護(hù)性,從而節(jié)省開發(fā)成本和時(shí)間。STM32 HAL庫(kù)STM32系列芯片的HAL庫(kù),由ST公司提供和維護(hù)。下面將介紹
    發(fā)表于 08-08 18:21 ?3877次閱讀

    STM32Cube LL庫(kù)的巧妙之處

    STM32Cube LL庫(kù)的巧妙之處
    的頭像 發(fā)表于 09-27 16:26 ?1287次閱讀
    <b class='flag-5'>STM32</b>Cube <b class='flag-5'>LL</b><b class='flag-5'>庫(kù)</b>的巧妙之處

    STM32 DMA傳輸?shù)膯?wèn)題分析

    用戶使用STM32G473RET6芯片,開發(fā)環(huán)境STM32CubeMX+Keil(LL庫(kù))。使用DMA
    的頭像 發(fā)表于 12-01 09:19 ?2415次閱讀
    <b class='flag-5'>STM32</b> <b class='flag-5'>DMA</b>傳輸?shù)膯?wèn)題分析