[MM32硬件]
灵动MCU ADC 的连续采样能力概览
[复制链接]
1708|10
手机看帖扫描二维码随时随地手机跟帖
sj8zw8
当前离线
关注TA
发消息
51
主题393
帖子1056
积分
助理工程师
助理工程师, 积分 1056, 距离下一级还需 944 积分
助理工程师, 积分 1056, 距离下一级还需 944 积分
积分1056
在线时间11 小时
精华0
注册时间2019-9-18
最后登录2025-7-23
电梯直达
楼主
sj8zw8|
楼主
|
2025-4-30 10:42
|
只看该作者
|倒序浏览
|阅读模式
AD, ADC, MCU, dc, 能力
大多数灵动 MCU(如 MM32F103、MM32L073、MM32F527 等)采用的是基于 STM32 类似架构的 ADC,具备以下特性:
特性 描述
连续转换模式 支持无需CPU参与的自动连续采样
多通道扫描模式 可自动轮询多个电压通道
DMA 支持 可直接将采样数据搬运至内存,减轻CPU负担
触发机制 支持软件触发 / 定时器硬件触发(周期性采样)
二、用于电池曲线记录的典型配置
1. ADC 连续采样模式 + DMA + Timer 触发
组合效果如下:
定时器控制采样周期(如每秒采样一次)
ADC 连续采样多通道
DMA 自动搬运结果到内存
MCU主核无需实时干预
这非常适合用于:
电池电压变化趋势记录
长时间供电状态分析(如1小时、1天)
多组电池监测(多通道)
三、实现步骤概览(伪代码说明)
c
复制
编辑
// 1. 配置定时器触发ADC
TIMx->CR2 |= TIM_TRGO_UPDATE; // 设置为TRGO输出源
TIMx->PSC = ...; // 设置预分频
TIMx->ARR = ...; // 设置周期(采样周期)
// 2. 配置ADC为连续+触发模式
ADC_InitStructure.ContinuousConvMode = ENABLE;
ADC_InitStructure.ExternalTrigConv = ADC_ExternalTrigConv_Tx_TRGO;
ADC_InitStructure.NbrOfChannel = 1;
ADC_Init(ADCx, &ADC_InitStructure);
// 3. 启用DMA:将ADC结果直接传输到数组
DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t)&ADCx->DR;
DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t)adc_data_buf;
DMA_InitStructure.DMA_BufferSize = N;
DMA_InitStructure.DMA_Mode = CIRCULAR;
DMA_Init(DMAx, &DMA_InitStructure);
DMA_Cmd(DMAx, ENABLE);
最终结果:只需读取 adc_data_buf[],即可获得一段时间内的电压变化序列。
四、数据处理建议(提升效率)
技术 描述
DMA Circular模式 数据不断覆盖旧数据,适合环形曲线缓存
中值滤波 /移动平均 去除突变点,提升趋势判断准确性
数据压缩 每分钟取最大/最小/平均点,减少存储占用
Flash日志 若要掉电保存,可定期写入 Flash/EEPROM
本主题由 21电子网审核员 于 2025-4-30 11:38 审核通过
使用特权
评论回复
赏
标题置顶
标题高亮
点赞共0人点赞
xiaoqizi
当前离线
关注TA
发消息
126
主题4300
帖子1万
积分
资深工程师
资深工程师, 积分 12990, 距离下一级还需 7010 积分
资深工程师, 积分 12990, 距离下一级还需 7010 积分
积分12990
在线时间99 小时
精华0
注册时间2018-6-11
最后登录2025-7-10
沙发
xiaoqizi|
|
2025-5-9 18:31
|
只看该作者
大多数灵动 MCU 的 ADC 支持无需 CPU 参与的自动连续采样
使用特权
评论回复
赏
点赞共0人点赞
木木guainv
当前离线
关注TA
发消息
186
主题4300
帖子1万
积分
资深工程师
资深工程师, 积分 12960, 距离下一级还需 7040 积分
资深工程师, 积分 12960, 距离下一级还需 7040 积分
积分12960
在线时间102 小时
精华0
注册时间2018-6-11
最后登录2025-7-8
打赏0.00受赏5.00
板凳
木木guainv|
|
2025-5-9 20:18
|
只看该作者
连续转换模式下,ADC 完成一次转换后会自动开始下一次转换,持续不断地对输入信号进行采样和转换,能够实时监测模拟信号的变化
使用特权
评论回复
赏
点赞共0人点赞
Jiangxiaopi
当前离线
关注TA
发消息
51
主题200
帖子1100
积分
助理工程师
助理工程师, 积分 1100, 距离下一级还需 900 积分
助理工程师, 积分 1100, 距离下一级还需 900 积分
积分1100
在线时间6 小时
精华0
注册时间2024-12-4
最后登录2025-7-7
地板
Jiangxiaopi|
|
2025-5-9 21:59
|
只看该作者
具备多通道扫描模式,可自动轮询多个电压通道
使用特权
评论回复
赏
点赞共0人点赞
荣陶陶
当前离线
关注TA
发消息
50
主题190
帖子1070
积分
助理工程师
助理工程师, 积分 1070, 距离下一级还需 930 积分
助理工程师, 积分 1070, 距离下一级还需 930 积分
积分1070
在线时间6 小时
精华0
注册时间2024-12-4
最后登录2025-7-5
5楼
荣陶陶|
|
2025-5-10 07:24
|
只看该作者
多通道扫描模式可以同时对多个模拟信号源进行连续采样,提高了系统的灵活性和数据采集效率
使用特权
评论回复
赏
点赞共0人点赞
Zhiniaocun
当前离线
关注TA
发消息
48
主题200
帖子1100
积分
助理工程师
助理工程师, 积分 1100, 距离下一级还需 900 积分
助理工程师, 积分 1100, 距离下一级还需 900 积分
积分1100
在线时间8 小时
精华0
注册时间2024-12-4
最后登录2025-7-7
6楼
Zhiniaocun|
|
2025-5-10 09:07
|
只看该作者
支持 DMA,可将采样数据直接搬运至内存,减轻 CPU 负担
使用特权
评论回复
赏
点赞共0人点赞
Zuocidian
当前离线
关注TA
发消息
61
主题181
帖子1043
积分
助理工程师
助理工程师, 积分 1043, 距离下一级还需 957 积分
助理工程师, 积分 1043, 距离下一级还需 957 积分
积分1043
在线时间8 小时
精华0
注册时间2024-12-4
最后登录2025-7-15
7楼
Zuocidian|
|
2025-5-10 10:50
|
只看该作者
在连续采样过程中,大量的数据传输如果仅靠 CPU 来处理,会占用大量的 CPU 资源,影响系统的运行效率。而通过 DMA,数据可以直接从 ADC 传输到指定的内存区域,CPU 只需在需要时读取和处理数据即可,大大提高了数据处理的效率和系统的实时性。
使用特权
评论回复
赏
点赞共0人点赞
Puchou
当前离线
关注TA
发消息
62
主题182
帖子1046
积分
助理工程师
助理工程师, 积分 1046, 距离下一级还需 954 积分
助理工程师, 积分 1046, 距离下一级还需 954 积分
积分1046
在线时间11 小时
精华0
注册时间2024-12-4
最后登录2025-7-15
8楼
Puchou|
|
2025-5-10 12:55
|
只看该作者
具有丰富的触发机制,如软件触发、定时器硬件触发等,可实现周期性采样等操作
使用特权
评论回复
赏
点赞共0人点赞
Xiashiqi
当前离线
关注TA
发消息
60
主题182
帖子1046
积分
助理工程师
助理工程师, 积分 1046, 距离下一级还需 954 积分
助理工程师, 积分 1046, 距离下一级还需 954 积分
积分1046
在线时间9 小时
精华0
注册时间2024-12-4
最后登录2025-7-15
9楼
Xiashiqi|
|
2025-5-10 14:46
|
只看该作者
在一些需要精确控制采样时间的场景中,如音频信号采集、电力系统监测等,可以根据实际需求设置合适的采样频率
使用特权
评论回复
赏
点赞共0人点赞
小海师
当前离线
关注TA
发消息
60
主题180
帖子1040
积分
助理工程师
助理工程师, 积分 1040, 距离下一级还需 960 积分
助理工程师, 积分 1040, 距离下一级还需 960 积分
积分1040
在线时间7 小时
精华0
注册时间2024-12-4
最后登录2025-7-7
10楼
小海师|
|
2025-5-10 16:39
|
只看该作者
部分灵动 MCU 的 ADC 具有较高的转换速度,能够满足快速变化的模拟信号的采样需求
使用特权
评论回复
赏
点赞共0人点赞
Haizangwang
当前离线
关注TA
发消息
58
主题180
帖子1040
积分
助理工程师
助理工程师, 积分 1040, 距离下一级还需 960 积分
助理工程师, 积分 1040, 距离下一级还需 960 积分
积分1040
在线时间12 小时
精华0
注册时间2024-12-4
最后登录2025-7-7
11楼
Haizangwang|
|
2025-5-10 18:22
|
只看该作者
一些灵动 MCU 的 ADC 支持硬件过采样,过采样率从 2 次到 256 次可配,可过采样到 16 位分辨率
使用特权
评论回复
赏
点赞共0人点赞