在STM32系列ADC外设中的转换序列(Conversion),分为常规转换(Regular)和注入转换(Injected)两类,核心区别如下:
一、常规转换(Regular Conversion)
核心特性:最多支持16个通道,按预设顺序依次完成转换,是最常用的普通采样模式。
数据存储:所有通道共享1个数据寄存器ADC_DR,转换结束后会置位EOC标志位,支持DMA自动搬运数据。
适用场景:多路传感器轮询、周期性常规数据采集,比如多路温度、压力信号的定时监测。
二、注入转换(Injected Conversion)
核心特性:最多支持4个通道,优先级远高于常规转换,可打断正在执行的常规转换,待自身转换完成后再恢复常规流程。
数据存储:每个通道拥有独立的JDR1~JDR4寄存器,转换结束后置位JEOC标志位,不支持DMA传输。
适用场景:紧急事件的高优先级采样,比如过流、过压等故障触发时的关键参数快速采集。
注入采样(Injected Conversion)是一种在模数 转换器 (ADC)中使用的特殊采样模式。在注入采样模式下,可以在规则采样之外,临时触发一次模数转换,以获取特定的模拟输入信号。
注入采样的主要特点是可以在规则采样过程中的任意时刻触发,而不需要按照预定义的规则序列进行采样。这使得注入采样非常适用于需要临时监测特定事件或信号的应用场景。以下是注入采样的一般工作流程:
配置注入通道:首先,需要选择用于注入采样的模拟输入通道。通常,ADC具有多个模拟输入通道,可以根据需要选择一个或多个通道。可以通过设置相关的配置寄存器来选择注入通道。
配置触发源:为了触发注入采样,需要选择触发源。触发源可以是外部事件(如外部触发信号或定时器事件)或软件触发(由软件代码触发)。选择适当的触发源是根据应用需求和实际情况来确定的。
启动注入采样:一旦配置好注入通道和触发源,可以通过设置相关的控制寄存器来启动注入采样。启动后,ADC将根据触发源的信号来触发一次注入采样,并将模拟输入信号转换为数字值。
获取采样结果:一旦注入采样完成,可以通过读取ADC的寄存器来获取转换结果。ADC将采样结果存储在相应的寄存器中,供处理器读取和分析。
我要赚赏金
