ADC接口,共10路

1、Air8101共可支持10路ADC管脚,分别是ADC1-6,ADC10,ADC12-14,复用分布在不同的10个管脚上;
但是,需要特别说明的是:管脚虽然是10路,但同时只能使用6个,以下为详细说明:
Air8101 内部有 6 个 ADC 接口通道,以ADC1对应通道 ID:1 为例,以此类推;
Air8101有ADC1,ADC2,ADC3,ADC4,ADC5,ADC6,ADC10,ADC12,ADC13,ADC14,一共10路外部ADC管脚;
这10路ADC复用的对应关系为:
ADC1 对应 ADC10,共用一路 ID:1 ;
ADC2 对应 ADC12,共用一路 ID:2;
ADC3 对应 ADC13,共用一路 ID:3;
ADC4 对应 ADC14,共用一路 ID:4;
ADC5 和 ADC6没有对应的其他ADC通道;
这里的对应关系如何理解呢?
以ADC1 对应 ADC10为例,意思是在Air8101内部,ADC1和ADC10是同一个ADC通道,ADC1和ADC10不能同时使用;
2、Air8101的ADC功能,是一个 12 位逐次逼近型模数转换器,拥有多个外部模拟输入通道以及内部专用通道;
Air8101的ADC功能具有如下特性:
-
可编程采样率:范围从 12.5 kHz 到 812.5 kHz
-
分辨率:12 位
-
外部模拟输入通道:最多支持 10 路,分别为 ADC1/2/3/4/5/6/10/12/13/14
-
内部专用通道:对用户开放的共 1 路 电池电压监测通道,连接至 ADC0,在LuatOS中以 adc.CH_VBAT 函数对用户开放使用;
3、Air8101的ADC功能芯片内部参数;
| Parameter | Condition | Min. | Typ. | Max. | Unit |
|---|---|---|---|---|---|
| Conversion clock | - | 0.2 | - | 13 | MHz |
| Conversion time | - | - | 16 | - | Cycle |
| VREF | Internal | - | 1.1 | - | V |
| External | - | VDDGPIO/3 | - | V | |
| Input voltage range | - | 0 | - | VREF*N(1) | V |
| Input impedance | - | 10 | - | - | MΩ |
| Input capacitance (Cs) | - | - | 1 | - | pF |
| DNL | - | -1 | - | 3 | LSB |
| INL | - | -5 | - | 5 | LSB |
| ENOB | - | - | 10 | - | Bit |
| SNDR | - | - | 62 | - | dB |
| SFDR | - | - | 77 | - | dB |
| TSTARTUP | - | - | 5 | - | μs |
| Current consumption | - | - | 200 | - | μA |
(1) N is the input voltage division factor. N=1, 2, 3, or 4.
4、Air8101的ADC功能使用,要结合LuatOS核心库ADC来理解;
https://docs.openluat.com/osapi/core/adc/
在这里特别说明一下Air8101的ADC量程问题;
LuatOS中,ADC输入有两个量程,一个是ADC_RANGE_MIN,一个是ADC_RANGE_MAX;
就Air8101来说,ADC_RANGE_MIN对应量程为0-1.5V,ADC_RANGE_MAX对应量程为0-2.4V;
所以,需要根据不同的被测电压范围,结合ADC管脚实际输入的电压范围,进行灵活选择:
a. 当被测电压最大值在1.5V以内,使用adc.ADC_RANGE_MIN;
b. 当被测电压大于1.5V小于2.4V,使用adc.ADC_RANGE_MAX,且不需要添加外部分压电路;
c. 当被测量电压最高值在2.4V以上时, 使用ADC_RANGE_MIN,且必须添加外部分压电路将被测电压分压至1.5V以内;
5、特别注意事项;
- 外部分压时,如果ADC输入电压无法满足低于1.5V,以NTC电阻为例,可灵活使用如下右侧电路进行灵活设计;

- 如果不希望ADC变化太快,可以通过软件算法处理,过滤掉变化较大的数值,也可以在硬件电路上增加滤波电路; 比如,外部分压时,可以增加滤波电容增加ADC输入稳定性,但缺点是ADC的细微变化会被过滤掉,请根据实际需要谨慎选择; 说明:R300可以增加ESD能力,阻值建议为510Ω,不建议使用K级阻值的电阻;
