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

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

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

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

STM32U5 ADC+DMA配置演示

茶話MCU ? 來源:茶話MCU ? 2023-07-29 16:19 ? 次閱讀

有人使用STM32U5系列MCU開發(fā)產(chǎn)品,在用到ADC結(jié)合DMA傳輸時遇到點障礙,這里針對片內(nèi)ADC1和ADC4基于DMA標準請求模式和鏈表模式演示下實現(xiàn)過程,以供參考。

先對ADC1基于DMA標準請求模式做演示。

隨意選擇ADC1的4個通道,掃描模式,連續(xù)轉(zhuǎn)換,DMA傳輸轉(zhuǎn)換結(jié)果并令DMA工作在外設(shè)到內(nèi)存的循環(huán)傳輸模式。使用CubeMx進行配置。其中DMA通道使用Channel 1。

208c8d32-2dda-11ee-815d-dac502259ad0.png

20efc29e-2dda-11ee-815d-dac502259ad0.png

216914fa-2dda-11ee-815d-dac502259ad0.png

相關(guān)代碼:

#defineADC_BUFFRER_SIZE((uint32_t)8)
uint32_t   ADC1_Result[ADC_BUFFRER_SIZE];


ADC_HandleTypeDef hadc1;
DMA_HandleTypeDef handle_GPDMA1_Channel1; //For ADC1


/*USERCODEBEGIN2*/




HAL_PWREx_EnableVddA();//additmanuallywithlowercubeMxversion

__HAL_LINKDMA(&hadc1,DMA_Handle,handle_GPDMA1_Channel1);


if(HAL_ADC_Start_DMA(&hadc1,(uint32_t*)ADC1_Result,
                      (ADC_BUFFRER_SIZE)
                       ) != HAL_OK)
  {
    Error_Handler();
  } 


  /* USER CODE END 2 */

運行結(jié)果如下圖所示:【目前4個通道我是懸空的】

21a23672-2dda-11ee-815d-dac502259ad0.png

現(xiàn)在對ADC4基于DMA鏈表模式做演示,其實就一個節(jié)點。

選擇ADC4的4個內(nèi)部信號通道,掃描模式,連續(xù)轉(zhuǎn)換,DMA傳輸轉(zhuǎn)換結(jié)果,并令DMA工作在外設(shè)字到內(nèi)存字的循環(huán)模式。使用CubeMx進行配置。其中DMA通道使用Channel 0。對于內(nèi)部信號的采樣,往往有最小采樣時間要求,我這里的演示隨便選了個參數(shù),具體應(yīng)用時請參考數(shù)據(jù)手冊及當時ADC時鐘具體擬定。特此提醒!

21ba54dc-2dda-11ee-815d-dac502259ad0.png

關(guān)于DMA鏈表模式的配置在CubeMx界面里的Utility菜單下。

2202a7dc-2dda-11ee-815d-dac502259ad0.png

222328ae-2dda-11ee-815d-dac502259ad0.png

225ee04c-2dda-11ee-815d-dac502259ad0.png

相關(guān)用戶代碼:

/*Privatevariables---------------------------------------------------------*/
ADC_HandleTypeDef hadc4;
DMA_NodeTypeDef Node_GPDMA1_Channel1;
DMA_QListTypeDef List_GPDMA1_Channel1;
DMA_HandleTypeDef handle_GPDMA1_Channel0;
/* USER CODE BEGIN PV */


/* USER CODE BEGIN 2 */


HAL_PWREx_EnableVddA(); //add it manually with lower cubeMx version


MX_ADC4Queue_Config();


__HAL_LINKDMA(&hadc4,DMA_Handle,handle_GPDMA1_Channel0);


HAL_DMAEx_List_SetCircularMode(&ADC4Queue);

if (HAL_DMAEx_List_LinkQ(&handle_GPDMA1_Channel0, &ADC4Queue) != HAL_OK)
{
Error_Handler();
}


if (HAL_ADC_Start_DMA(&hadc4,
(uint32_t *)ADC4_Result,
(ADC_BUFFRER_SIZE)
) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN WHILE */

結(jié)果驗證【顯示了2組數(shù)據(jù)】:

229b1d82-2dda-11ee-815d-dac502259ad0.png

最后還提醒下,如果CubeMx版本比較低時,HAL_PWREx_EnableVddA()函數(shù)需要自己手動添加。我目前CubeMx 6.9.0版本已經(jīng)不用手動添加了,創(chuàng)建工程時會將其自動生成于相應(yīng)位置。


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

    關(guān)注

    97

    文章

    6302

    瀏覽量

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

    關(guān)注

    3

    文章

    552

    瀏覽量

    99954

原文標題:STM32U5 ADC+DMA配置演示

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

收藏 人收藏

    評論

    相關(guān)推薦

    基于STM32U5STM32CubeMX環(huán)境搭建

    基于STM32U5STM32CubeMX環(huán)境搭建
    的頭像 發(fā)表于 09-21 17:35 ?1309次閱讀
    基于<b class='flag-5'>STM32U5</b> 的 <b class='flag-5'>STM32</b>CubeMX環(huán)境搭建

    STM32U5系列TIMER+DMA+DAC應(yīng)用演示

    有人使用STM32U575芯片的DAC功能。他希望使用TIMER事件觸發(fā)DMA,并通過DMA傳輸內(nèi)存數(shù)據(jù)到DAC輸出寄存器,進而產(chǎn)生相應(yīng)的DAC輸出波形。可他不知如何配置
    的頭像 發(fā)表于 01-24 09:10 ?1333次閱讀
    <b class='flag-5'>STM32U5</b>系列TIMER+<b class='flag-5'>DMA</b>+DAC應(yīng)用<b class='flag-5'>演示</b>

    怎樣去解決STM32多通道ADC+DMA無法進入中斷的問題

    STM32多通道ADC+DMA為什么會無法進入中斷呢?怎樣去解決STM32多通道ADC+DMA無法進入中斷的問題?
    發(fā)表于 09-26 08:04

    如何對單緩沖模式的ADC+DMA如何進行配置

    怎樣去操作單緩沖模式的ADC+DMA呢?如何對單緩沖模式的ADC+DMA如何進行配置?
    發(fā)表于 10-18 09:29

    STM32F407的ADC+DMA該如何去使用呢

    怎樣去讀取ADC的值?STM32F407的ADC+DMA該如何去使用呢?
    發(fā)表于 10-18 08:34

    STM32F103定時器觸發(fā)ADC+DMA傳輸

    STM32F103定時器觸發(fā)ADC+DMA傳輸ADC除了軟件觸發(fā)方式之外還有外部觸發(fā)模式,我用TIM2定時器觸發(fā)ADC,并用DMA傳輸
    發(fā)表于 11-30 10:36 ?51次下載
    <b class='flag-5'>STM32</b>F103定時器觸發(fā)<b class='flag-5'>ADC+DMA</b>傳輸

    STM32U5系列采用LPBAM進行電源優(yōu)化

    STM32U5系列采用LPBAM進行電源優(yōu)化
    發(fā)表于 11-21 08:11 ?0次下載
    <b class='flag-5'>STM32U5</b>系列采用LPBAM進行電源優(yōu)化

    STM32L5STM32U5系列的Arm?TrustZone?功能

    STM32L5STM32U5系列的Arm?TrustZone?功能
    發(fā)表于 11-21 17:06 ?0次下載
    <b class='flag-5'>STM32L5</b>和<b class='flag-5'>STM32U5</b>系列的Arm?TrustZone?功能

    STM32U5系列物聯(lián)網(wǎng)節(jié)點探索套件

    STM32U5系列物聯(lián)網(wǎng)節(jié)點探索套件
    發(fā)表于 11-22 08:21 ?0次下載
    <b class='flag-5'>STM32U5</b>系列物聯(lián)網(wǎng)節(jié)點探索套件

    STM32U5帶OEM Key保護的RDP降級

    電子發(fā)燒友網(wǎng)站提供《STM32U5帶OEM Key保護的RDP降級.pdf》資料免費下載
    發(fā)表于 08-01 15:42 ?0次下載
    <b class='flag-5'>STM32U5</b>帶OEM Key保護的RDP降級

    STM32U5系列使用LPBAM進行功耗優(yōu)化

    電子發(fā)燒友網(wǎng)站提供《STM32U5系列使用LPBAM進行功耗優(yōu)化.pdf》資料免費下載
    發(fā)表于 08-01 16:42 ?2次下載
    <b class='flag-5'>STM32U5</b>系列使用LPBAM進行功耗優(yōu)化

    STM32U5系列片內(nèi)ADC1和ADC4實現(xiàn)過程(上)

    有人使用STM32U5系列MCU開發(fā)產(chǎn)品,在用到ADC結(jié)合DMA傳輸時遇到點障礙,這里針對片內(nèi)ADC1和ADC4基于
    的頭像 發(fā)表于 07-30 09:27 ?1031次閱讀
    <b class='flag-5'>STM32U5</b>系列片內(nèi)<b class='flag-5'>ADC</b>1和<b class='flag-5'>ADC</b>4實現(xiàn)過程(上)

    STM32U5 LPBAM模式介紹

    STM32U5 LPBAM模式介紹
    的頭像 發(fā)表于 10-26 17:59 ?619次閱讀
    <b class='flag-5'>STM32U5</b> LPBAM模式介紹

    基于STM32U5的B-U585I-IOT02A開發(fā)板開箱

    基于STM32U5的B-U585I-IOT02A開發(fā)板開箱
    的頭像 發(fā)表于 09-26 16:20 ?1390次閱讀
    基于<b class='flag-5'>STM32U5</b>的B-<b class='flag-5'>U</b>585I-IOT02A開發(fā)板開箱

    STM32U5介紹

    電子發(fā)燒友網(wǎng)站提供《STM32U5介紹.pdf》資料免費下載
    發(fā)表于 09-19 15:06 ?0次下載
    <b class='flag-5'>STM32U5</b>介紹