关于STM32的ADC的扫描模式

我经过参考网上的资料 感觉EOC位
就像扫描模式,应该是每一个通道转换完就置一次,而不是等所有的通道都结束了才置位的。
不知道我理解的对不对?
书上写错了的?
1L:
额!这个还真不知道
2L(版主):
回复【楼主位】 utopia779 :
---------------------------------
这个要实验一下了.以实际实验结果为准.
---------------------------------
这个要实验一下了.以实际实验结果为准.
3L:
应该是每一个通道转换完就置一次
这样的话DMA才能在每个通道转换完立即取出数据
我是这样理解的
这样的话DMA才能在每个通道转换完立即取出数据
我是这样理解的
4L(我自己):
这个问题 现在我的理解是这样的
这个采样结束标记位 是完成所有的通道才置位的
所以,我们无法读取每个通道的采样数据
那怎么办呢?
那就需要使用DMA来读数据。
会有人问 DMA怎么知道 什么时候采样数据呢!
这个看 STM参考手册 或许 能够看得出来。
ADC的DMA请求并不经过 规则通道数据寄存器,而是通过转换器直接申请。
立此为证,等我完全明白了 再来解释。
这个采样结束标记位 是完成所有的通道才置位的
所以,我们无法读取每个通道的采样数据
那怎么办呢?
那就需要使用DMA来读数据。
会有人问 DMA怎么知道 什么时候采样数据呢!
这个看 STM参考手册 或许 能够看得出来。
ADC的DMA请求并不经过 规则通道数据寄存器,而是通过转换器直接申请。
立此为证,等我完全明白了 再来解释。
补充一张图 就会发现
如下图

具体的使用步骤:
主要是配置 ADC和 DMA。记得打开ADC的DMA允许位。



打开一次DMA的传输 DMA开始工作
然后开始进行AD转换,转换后产生DMA请求,将数据进行存储, 存储的采样数取决于 DMA设置的数量。
评论