ADC
- ADC,Analog-to-Digital Converter的缩写,指模/数转换器或者模数转换器 [1] 。是指将连续变化的模拟信号转换为离散的数字信号的器件。真实世界的模拟信号,例如温度、压力、声音或者图像等,需要转换成更容易储存、处理和发射的数字形式。
- 常见的ADC转换:声音大小,温度,湿度,光强,紫外线。
ADC分类:
1)积分型;
2)逐次逼近型; - STM32的ADC是12 位 ADC 是逐次趋近型模数转换器。它具有多达 19 个复用通道,可测量来自 16 个外部源、两个内部源和 VBAT 通道的信号。这些通道的 A/D 转换可在单次、连续、扫描或不连续采样模式下进行。
- 特性
(1)可配置 12 位、 10 位、 8 位或 6 位分辨率
(2)在转换结束、注入转换结束以及发生模拟看门狗或溢出事件时产生中断
(3)单次和连续转换模式
(4)用于自动将通道 0 转换为通道“ n”的扫描模式
(5)数据对齐以保持内置数据一致性
(6)可独立设置各通道采样时间
(7)外部触发器选项,可为规则转换和注入转换配置极性
(8)不连续采样模式
(9)双重/三重模式(具有 2 个或更多 ADC 的器件提供)
(10)双重/三重 ADC 模式下可配置的 DMA 数据存储
(11)双重/三重交替模式下可配置的转换间延迟
(12)ADC 转换类型(参见数据手册)
(13)ADC 电源要求:全速运行时为 2.4 V 到 3.6 V,慢速运行时为 1.8 V
(14)ADC 输入范围: VREF- < VIN < VREF+
(15)规则通道转换期间可产生 DMA 请求 - ADC的转换模式
每个ADC有19个复用通道,编号0~18 。
每个ADC还有两种转换序列:规则序列和注入序列。
每种序列的转换方式:连续和单次,扫描和不扫描。
扫描模式又分:连续采样和不连续采样。 - 序列配置
序列:顺序,排列。对模数转换的复用通道进行排列。
规则序列:最大长度为16,这个长度为16的序列可以根据需要任意配置。可以编号颠倒,重复。
- 单次和连续扫描
对于注入或者规则通道都适用。并且互相独立。
扫描:逐个转换序列当中的每一个通道
不扫描:只转换序列当中的第一个通道
单次&连续:对序列进行一次或者多次转换
单次不扫描:对序列的第一个通道进行一次模数转换,然后模数转换器停止工作。
转换通道9,结束。
单次扫描: 对序列的每一个通道都进行一次模数转换,然后模数转换器停止工作。
转换通道9,2,7,0,0,2 ;结束。
连续不扫描:对序列的第一个通道一直连续进行模数转换。
一直转换通道9。
连续扫描: 对序列的每一个通道都进行一次模数转换,然后重复。
转换通道9,2,7,0,0,2 ;1次。
转换通道9,2,7,0,0,2 ;2次。
…一直重复。 - 连续采样和不连续采样
都是指扫描模式下两种工作方式。
连续采样:只用触发一次AD转换,扫描模式就会将序列的所有的通道全部进行一次AD转换。
不连续采样:每次触发只转换序列的部分通道,下次触发转换还没有被转换。
其中n为每次触发转换的通道数,可以使用ADC_CR1 寄存器中的 DISCNUM[2:0] 位进行编程。
n = 3,要转换的通道 = 0、 1、 2、 3、 6、 7、 9、 10
第 1 次触发:转换序列 0、 1、 2
第 2 次触发:转换序列 3、 6、 7
第 3 次触发:转换序列 9、 10 并生成 EOC 事件
第 4 次触发:转换序列 0、 1、 2
数据来源:http://www.xinyingda.cn/bbs/wapbencandy.php?fid=16&id=1617