0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

撞上电子 2023-05-16 09:44 次阅读

1.选芯片打开cubemx,选择单片机型号(实际可随自己的板子型号来)。3bab6a34-f121-11ed-ba01-dac502259ad0.png2.配置好相关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    相关dma配置,这里模式选择循环,这就不需要每次调用相关函数去获取adc的值了。因为是5个通道,所以Memory选择递增。另外这里的DMA的中断是默认开启的,实际在程序上是不用的,生成工程后,得注释掉DMA中断使能,不然会一直进中断(这种现象我也只在f103和f334中见到)。3cb54c56-f121-11ed-ba01-dac502259ad0.png4.时钟树的配置,按照自己的板子来配置就行。3ce375cc-f121-11ed-ba01-dac502259ad0.png5.项目的相关配置3d161cb6-f121-11ed-ba01-dac502259ad0.png3d33395e-f121-11ed-ba01-dac502259ad0.png3d7490ac-f121-11ed-ba01-dac502259ad0.png6.生成工程,并打开相关工程3d94ad10-f121-11ed-ba01-dac502259ad0.png7.打开main.c(另加一个adc校准)3dc113e6-f121-11ed-ba01-dac502259ad0.png

8.编译程序,下载到板子上即可3de9adec-f121-11ed-ba01-dac502259ad0.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • adc
    adc
    +关注

    关注

    98

    文章

    6494

    浏览量

    544431
  • STM32
    +关注

    关注

    2270

    文章

    10893

    浏览量

    355679
收藏 人收藏

    评论

    相关推荐

    STM32CUBEMX(9)--ADC通过轮询方式读取,USART打印

    概述 本章通过使用模数转换器(ADC),通过轮询方式采集多个ADC通道电压。 之前已经做过DMA方式采样,详情请查看: https://blog.csdn.net/qq_2431294
    发表于 09-10 15:31

    STM32CUBEMX(3)--ADC通过DMA方式采样,USART打印

    的优先级。 本篇文章主要介绍如何使用STM32CubeMX实现ADCDMA下快速采集,并且打印出去。 QQ群:615061293。 非DMA
    发表于 09-04 14:08

    第12章-ADC采集电压和显示 基于STM32ADC—电压采集(详细讲解+HAL

    第12章-ADC采集电压和显示 基于STM32ADC—电压采集(详细讲解+HAL
    的头像 发表于 08-21 16:31 2441次阅读
    第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>(详细讲解+<b class='flag-5'>HAL</b><b class='flag-5'>库</b>)

    myST账号无法注册导致stm32cubemx无法下载hal的固件怎么解决?

    myST账号无法注册导致stm32cubemx无法下载hal的固件包,myST账号注册卡在最后的邮箱验证环节,一直卡着无法注册通过 很急很急!以前stm32cubemx都不需要登录
    发表于 07-23 08:05

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

    最近用CubeMX(版本到6.11.1了)调试ADC ,有4路,希望能用DMA模式,OS是FreeRTOS HAL_ADC_ConvCpltCallback函数里面写标记位, 大致代码
    发表于 05-30 08:10

    使用stm32CubeMx时,设置DMA为Circular模式会被HAL_ADC_Start_DMA阻塞为什么?

    在使用stm32CubeMx时遇到一个问题,我在用DMA方式获取ADC数据时,设置DMA为Circular模式会被HAL_ADC_Start_DMA
    发表于 04-25 08:12

    STM32F030F4上使用CubeMX配置ADC+DMA循环采集无法提取数据的原因?

    如题,使用STM32CubeMX配置了F030的ADC+DMA循环采集ADC启动后OVR一直处于置为状态,但是DR寄存器输出的数据又是正常的,我使用std
    发表于 04-16 08:20

    STM32cubemx和KEIL的有什么不同?

    STM32cubemx软件有对应各个系列芯片的. 使用cubemx,生成代码框架,比如生成MDK的代码框架。但MDK也有自己的PACK。那么MDK的PACK和CUBEMX
    发表于 04-11 06:02

    STM32CubeMX HAL_UART_Receive函数怎么使用?

    STM32CubeMX HAL_UART_Receive函数的使用
    发表于 04-03 08:19

    stm32cubemx建立多通道ADC+DMA,想使用DMA中断要怎么实现?

    各位大神: 我在用stm32 cubemx建立ADC+DMA多通道,想使用DMA中断,百度了个设置在DMA里增加
    发表于 04-02 07:14

    使用CubeMX生成STM32F103C8T6的DMA ADC代码为什么无效?

    请问各位,我使用CubeMX生成STM32F103C8T6的DMA ADC代码,工程配置请看附件,我运行如下代码为什么无效: /* USER CODE BEGIN Includes
    发表于 03-29 06:08

    STM32CubeMX 6.5.0时钟配置页面的ADC时钟源无法配置怎么解决?

    最新版STM32CubeMX 6.5.0,启动ADC功能后,时钟配置页面的ADC时钟源仍无法配置。STM32CubeMX 6.4.0使用正常。是不是新版的BUG?需要改进。
    发表于 03-25 07:04

    STM32G070_ADC如何设置参考电压?

    STM32G070_ADC请教如何设置 参考电压 Stm32CubeMx没有设置参考电压选项 HAL代码里,也找了没有对应的 比如设置参考电压 为1.2V 或3V 请教如何设
    发表于 03-21 06:45

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

    adc+dma采样,代码是通过cubemx生成的,调试时发现adc通过dma采集到的数据不对,通过单步仿真发现在
    发表于 03-15 06:16

    使用STM32L031F6在hal下进行ADC+DMA多通道采集采集的电压值始终为0的原因?

    使用STM32L031F6芯片 在hal下进行ADC+DMA多通道采集时候,采集的电压值始终为
    发表于 03-14 07:06