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

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

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

基于STM32CubeMX的HAL庫的DMA的多路ADC采集

撞上電子 ? 2023-05-16 09:44 ? 次閱讀

1.選芯片打開cubemx,選擇單片機型號(實際可隨自己的板子型號來)。3bab6a34-f121-11ed-ba01-dac502259ad0.png2.配置好相關(guān)RCC的HSE為外部晶振和sys的Debug模式3bfeb2ac-f121-11ed-ba01-dac502259ad0.png其中sys的debug模式,我這里用的是DAP下載器,所以如下圖,如果是其他下載器,建議自行百度如何選擇。3c497198-f121-11ed-ba01-dac502259ad0.png3.ADC的配置,實際按自己的需求來3c78fd28-f121-11ed-ba01-dac502259ad0.png3c8d45da-f121-11ed-ba01-dac502259ad0.png ???相關(guān)dma配置,這里模式選擇循環(huán),這就不需要每次調(diào)用相關(guān)函數(shù)去獲取adc的值了。因為是5個通道,所以Memory選擇遞增。另外這里的DMA的中斷是默認(rèn)開啟的,實際在程序上是不用的,生成工程后,得注釋掉DMA中斷使能,不然會一直進中斷(這種現(xiàn)象我也只在f103和f334中見到)。3cb54c56-f121-11ed-ba01-dac502259ad0.png4.時鐘樹的配置,按照自己的板子來配置就行。3ce375cc-f121-11ed-ba01-dac502259ad0.png5.項目的相關(guān)配置3d161cb6-f121-11ed-ba01-dac502259ad0.png3d33395e-f121-11ed-ba01-dac502259ad0.png3d7490ac-f121-11ed-ba01-dac502259ad0.png6.生成工程,并打開相關(guān)工程3d94ad10-f121-11ed-ba01-dac502259ad0.png7.打開main.c(另加一個adc校準(zhǔn))3dc113e6-f121-11ed-ba01-dac502259ad0.png

8.編譯程序,下載到板子上即可3de9adec-f121-11ed-ba01-dac502259ad0.png

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

    關(guān)注

    98

    文章

    6498

    瀏覽量

    544658
  • STM32
    +關(guān)注

    關(guān)注

    2270

    文章

    10900

    瀏覽量

    356042
收藏 人收藏

    評論

    相關(guān)推薦

    STM32CubeMX的菜單介紹

    相信初學(xué)者打開STM32CubeMX一定是一臉懵逼,里面都是全英文的,不知道從何入手。這里先給大家簡單講解一下。在新建工程這一欄里,我們最常用的是第一個,它會彈出一個芯片列表供你選擇,然后就會創(chuàng)建一
    的頭像 發(fā)表于 12-25 21:03 ?78次閱讀
    <b class='flag-5'>STM32CubeMX</b>的菜單介紹

    STM32CUBEMX(9)--ADC通過輪詢方式讀取,USART打印

    概述 本章通過使用模數(shù)轉(zhuǎn)換器(ADC),通過輪詢方式采集多個ADC通道電壓。 之前已經(jīng)做過DMA方式采樣,詳情請查看: https://blog.csdn.net/qq_2431294
    發(fā)表于 09-10 15:31

    STM32CUBEMX(3)--ADC通過DMA方式采樣,USART打印

    的優(yōu)先級。 本篇文章主要介紹如何使用STM32CubeMX實現(xiàn)ADCDMA下快速采集,并且打印出去。 QQ群:615061293。 非DMA
    發(fā)表于 09-04 14:08

    第12章-ADC采集電壓和顯示 基于STM32ADC—電壓采集(詳細(xì)講解+HAL

    第12章-ADC采集電壓和顯示 基于STM32ADC—電壓采集(詳細(xì)講解+HAL
    的頭像 發(fā)表于 08-21 16:31 ?2585次閱讀
    第12章-<b class='flag-5'>ADC</b><b class='flag-5'>采集</b>電壓和顯示 基于<b class='flag-5'>STM32</b>的<b class='flag-5'>ADC</b>—電壓<b class='flag-5'>采集</b>(詳細(xì)講解+<b class='flag-5'>HAL</b><b class='flag-5'>庫</b>)

    myST賬號無法注冊導(dǎo)致stm32cubemx無法下載hal的固件怎么解決?

    myST賬號無法注冊導(dǎo)致stm32cubemx無法下載hal的固件包,myST賬號注冊卡在最后的郵箱驗證環(huán)節(jié),一直卡著無法注冊通過 很急很急!以前stm32cubemx都不需要登錄
    發(fā)表于 07-23 08:05

    STM32L151多路ADC使用DMA模式有沒有教程呀?

    最近用CubeMX(版本到6.11.1了)調(diào)試ADC ,有4路,希望能用DMA模式,OS是FreeRTOS HAL_ADC_ConvCpltCallback函數(shù)里面寫標(biāo)記位, 大致代碼
    發(fā)表于 05-30 08:10

    使用stm32CubeMx時,設(shè)置DMA為Circular模式會被HAL_ADC_Start_DMA阻塞為什么?

    在使用stm32CubeMx時遇到一個問題,我在用DMA方式獲取ADC數(shù)據(jù)時,設(shè)置DMA為Circular模式會被HAL_ADC_Start_DMA
    發(fā)表于 04-25 08:12

    STM32F030F4上使用CubeMX配置ADC+DMA循環(huán)采集無法提取數(shù)據(jù)的原因?

    如題,使用STM32CubeMX配置了F030的ADC+DMA循環(huán)采集,ADC啟動后OVR一直處于置為狀態(tài),但是DR寄存器輸出的數(shù)據(jù)又是正常的,我使用std
    發(fā)表于 04-16 08:20

    STM32cubemx和KEIL的有什么不同?

    STM32cubemx軟件有對應(yīng)各個系列芯片的. 使用cubemx,生成代碼框架,比如生成MDK的代碼框架。但MDK也有自己的PACK。那么MDK的PACK和CUBEMX
    發(fā)表于 04-11 06:02

    STM32CubeMX HAL_UART_Receive函數(shù)怎么使用?

    STM32CubeMX HAL_UART_Receive函數(shù)的使用
    發(fā)表于 04-03 08:19

    stm32cubemx建立多通道ADC+DMA,想使用DMA中斷要怎么實現(xiàn)?

    各位大神: 我在用stm32 cubemx建立ADC+DMA多通道,想使用DMA中斷,百度了個設(shè)置在DMA里增加
    發(fā)表于 04-02 07:14

    STM32CubeMX 6.5.0時鐘配置頁面的ADC時鐘源無法配置怎么解決?

    最新版STM32CubeMX 6.5.0,啟動ADC功能后,時鐘配置頁面的ADC時鐘源仍無法配置。STM32CubeMX 6.4.0使用正常。是不是新版的BUG?需要改進。
    發(fā)表于 03-25 07:04

    STM32G070_ADC如何設(shè)置參考電壓?

    STM32G070_ADC請教如何設(shè)置 參考電壓 Stm32CubeMx沒有設(shè)置參考電壓選項 HAL代碼里,也找了沒有對應(yīng)的 比如設(shè)置參考電壓 為1.2V 或3V 請教如何設(shè)
    發(fā)表于 03-21 06:45

    stm32f401使用hallHAL_DMA_Init中DMA_SxCR寄存器的配置無效怎么解決?

    adc+dma采樣,代碼是通過cubemx生成的,調(diào)試時發(fā)現(xiàn)adc通過dma采集到的數(shù)據(jù)不對,通過單步仿真發(fā)現(xiàn)在
    發(fā)表于 03-15 06:16

    使用STM32L031F6在hal下進行ADC+DMA多通道采集,采集的電壓值始終為0的原因?

    使用STM32L031F6芯片 在hal下進行ADC+DMA多通道采集時候,采集的電壓值始終為
    發(fā)表于 03-14 07:06