【STM32】hal库 多通道ADC(+DMA)采集 连续模式

项目场景:

使用STM32内部ADC做多通道ADC采集,为减小CPU开销,使用DMA模式。

cubemx操作步骤

1.手动输入STM32F103CBT6/STM32F103CBU6,选高速晶振,方便第二栏的时钟配置Clock Configuration

System Core-->RCC -->High Speed Clock(HSE)-->Crystal/Ceramic Resonator

2.配置下载SW模式

System Core-->SYS-->Dedug-->Serial Wire

添加DMA接受

3.配置串口1参数,添加DMA接受

Connectivity-->USART1-->Mode-->Asynchronous

Connectivity-->USART1-->Parameter Settings-->115200 8 N 1

Connectivity-->USART1-->DMA settings-->add 仅添加接受即可,通道自动分配,默认即可

5.配置FREERTOS

Middleware and Solft-->FREERTOS-->interface-->CMSIS_V1

Middleware and Solft-->FREERTOS-->Tasks and Queues-->Add 加两个任务即可

6.配置输出的参数,按如图配置即可

!注意路径不要出现中文

软件修改

注释ADC DMA的中断使能

打开main.c 添加变量(另加一个adc校准)

debug调试可以看到变量的值在跳动。

参考链接:https://m.fanyedu.com/article/119320.html

相关推荐
HANDY0920022 分钟前
从“不照人”到“剂量达标”:扇叶遮挡式UV-C空气消毒的工程边界与可验证评估框架
开发语言·人工智能·嵌入式硬件·智能家居
飞凌嵌入式3 小时前
千次静电放电试炼,守住飞凌嵌入式硬件可靠底线
嵌入式硬件
蹊黎12 小时前
Linux 下用 C 语言实现进度条
linux·c语言·单片机
Zw-awa15 小时前
从 CPU 搬运到自动搬运:DMA、空闲中断和两块缓冲
stm32
无敌贵点大王15 小时前
从寄存器层面重学STM32(6)——串口USART实战部分
stm32·单片机·嵌入式硬件
庙堂龙吟奈我何15 小时前
二进制和十六进制
stm32·单片机
国科安芯17 小时前
长期在轨的计算底座:商业空间站与在轨服务飞行器健康管理中的抗辐射MCU—— 面向可维护空间平台的分层容错与安全通信综述
人工智能·单片机·嵌入式硬件·安全·低轨卫星·抗辐射
TST-魚爷17 小时前
小型视频会议室音频踩坑:一体化拾音扩音方案实测分享(易视讯)
stm32·电脑·音视频·钉钉·腾讯会议·zoom会议
不昀19 小时前
RMII切到10Mbps,50MHz参考时钟也要降到5MHz吗?
单片机·嵌入式硬件·硬件设计·以太网接口
路上有只喵20 小时前
认识元器件 · 单片机(MCU/MPU/SOC) · 实战篇6
单片机·嵌入式硬件