请问一下,adc dma方式采集器外部电压,在一次采集20个数据后停止采集,应该如何停止dma功能,同时用不用停止adc。我用的是L053nucleo开发板,程序也是原厂例程。 |
如果DMA模式是Normal模式,当完成指定数据的传输后DMA会自行停止,这个停止无须外在干预; 我们也可以直接关闭DMA的相关传输通道;基于cube库,以你目前应用为例,使用 __HAL_DMA_DISABLE(&hdma_adc);即可。 或者,你还可以通过关闭请求事件来达到关闭相关DMA通道之目的。
如果DMA模式是Normal模式,当完成指定数据的传输后DMA会自行停止,这个停止无须外在干预;
__HAL_DMA_DISABLE(&hdma_adc)这一条好像应该设置成__HAL_DMA_DISABLE(hdma),这个您再研究一下。 另一个方式是设置成normal 也可以。 谢谢,谢谢!
数量可以设置的,采集20个触发中断然后停止好了