打印
[STM32G4]

DMA处理 ADC时 调用两次

[复制链接]
233|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
HomeKit|  楼主 | 2025-5-7 23:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
DM, DMA, AD, ADC, dc
使用 STM32G474 和 STM32CubeIDE,以及 HAL。
用 TIM3触发的 3 个 ADC 模块同时启动。
在 DMAx_Channely_IRQHandler 函数中读取结果,在 GPIO 中进行了切换。
我有 3 个DMAx_Channely_IRQHandler功能,每个 ADC 一个
所有输出都显示 DMAx_Channely_IRQHandler 函数被调用了两次。


使用特权

评论回复
沙发
flycamelaaa| | 2025-5-8 16:28 | 只看该作者
只启用需要的中断类型。

使用特权

评论回复
板凳
stormwind123| | 2025-5-8 16:29 | 只看该作者
检查中断优先级设置有没有冲突。

使用特权

评论回复
地板
probedog| | 2025-5-8 16:30 | 只看该作者
在每次传输完成后,DMA 通道可能未正确停止或重新启动,导致重复触发中断。

使用特权

评论回复
5
classroom| | 2025-5-8 16:30 | 只看该作者
如果 ADC 配置为连续转换模式,可能会导致 DMA 传输多次触发。

使用特权

评论回复
6
powerantone| | 2025-5-8 18:00 | 只看该作者
缓冲区大小与 ADC 采样点数不匹配?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

17

帖子

0

粉丝