stm32F7 ADC DMA回调函数的问题

2019-07-14 15:09发布

刚玩HAL库 不是很熟不清楚ADC DMA的完成标志到底是哪个或完成中断求教
我用HAL_ADC_ConvCpltCallback做为完成标志但波形不是连续的如下

我单次采2048点的波形到是挺好的
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
60user124
1楼-- · 2019-07-14 22:35
diaoshayu 发表于 1970-1-1 08:00

中断是调用了ADCx_DMA_IRQHandler(); 但我要取数据返回的完成标志位是那个哇
快乐一天天
2楼-- · 2019-07-15 00:07
看F7CUBE的ADC_DMA demo,虽然DMA中断和ADC中断都开了,但是完成标志位都是在HAL_ADC_ConvCpltCallback里面设置的。
我L4的多路获取值也是用的这个,暂时没发现问题。
60user124
3楼-- · 2019-07-15 02:02
 精彩回答 2  元偷偷看……
ctwewer
4楼-- · 2019-07-15 05:15
胡bbs4 发表于 1970-1-1 08:00

你应该在DMA中断里设置1个自己的标志位。在读取了数据后清除标志位。
testd021
5楼-- · 2019-07-15 08:31
不管是HAL还是标准库,最终还是要回归寄存器,看寄存器最直接了当
60user124
6楼-- · 2019-07-15 09:12

缓存提取一起放到HAL_ADC_ConvCpltCallback就好了

一周热门 更多>