在STM32 ADC多通道扫描模式下如何解释列?



我的stm32f10x的HAL通过启用ScanConvMode提供了一个带有以下模式选择器的ADC接口,该接口确定ADC是处理多个通道还是单个通道,还是仅由单个通道处理

对于多通道ADC读取(扫描模式),有一个接口提供序列,以排序如何读取多个通道。使用此接口,您可以使用序列号初始化每个通道,它们将按升序转换。

我的问题是,如果您将通道分配给 0,它会被忽略吗?如果您的 adc 等级有不连续性(例如 1-5、8、9、16),这些会以正确的顺序读取吗?文档对此非常不清楚

我有多达 16 个通道,我想通过多通道扫描读取,我不关心顺序,但我希望能够根据需要关闭和打开它们,以便任何给定时间我都不会进行比我需要的更多的转换。

相关信息

uint32_t 扫描Conv模式如果启用:执行转换 在序列模式下(由"NbrOfConversion"定义的多个列)。扫描方向向上:从等级 1 到等级"n"。此参数的值可以是 ADC_Scan_mode

uint32_t排名指定常规组序列器中的排名 此参数可以是 ADC_regular_rank 的值 注意:如果需要禁用通道或更改转换序列器的顺序,则排名包含 以前的通道设置可以被新的通道设置(或参数编号 转换可以调整)

秩定义了要扫描的通道的顺序/顺序。 例如,等级 1 包含 CH1、CH3 和 CH5。等级 2 包含 CH4 和 CH2。如果激活等级 2,将扫描 CH4,然后扫描 CH2。 如果我错了,请纠正我。

对不起,我错了。 行列定义要扫描的通道的顺序/顺序。在扫描模式下,分配给更高等级的通道将以更高的优先级进行扫描。将 CH3 分配给等级 1,将 CH1 分配给等级 2,将 CH5 分配给等级 3。扫描顺序为 CH3、CH1 和 CH5。 请反查。

最新更新