class ADC – 模拟到数字转换

ADC 类提供了对模拟到数字转换器的接口,并代表一个可以对连续电压进行采样并将其转换为离散值的单个点。

要对 ADC 采样进行更多控制,请参阅 machine.ADCBlock

示例用法:

from machine import ADC

adc = ADC(pin)        # create an ADC object acting on a pin
val = adc.read_u16()  # read a raw analog value in the range 0-65535
val = adc.read_uv()   # read an analog value in microvolts

构造函数

class machine.ADC(id, *, sample_ns, atten)

通过 id 访问与某个源关联的 ADC。这个 id 可能是一个整数(通常指定一个通道号)、一个 Pin 对象,或者底层机器支持的其他值。

如果给出了额外的关键字参数,它们将配置 ADC 的各种方面。如果没有给出,这些设置将采用之前的或默认值。设置项包括:

  • sample_ns 是采样时间,单位为纳秒。

  • atten 指定输入衰减。

方法

ADC.init(*, sample_ns, atten)

将给定的设置应用于ADC。只有指定的参数会被更改。有关参数的信息,请参阅上面的ADC构造函数。

ADC.block()

返回与此 ADC 对象关联的 ADCBlock 实例。

仅当移植版本支持 ADCBlock 类时,此方法才存在。

ADC.read_u16()

进行一次模拟读取并返回一个范围在 0-65535 之间的整数。返回值代表 ADC 采取的原始读数,缩放后的最小值为 0,最大值为 65535。

ADC.read_uv()

进行一次模拟读取并以微伏为单位返回一个整数值。是否校准该值以及如何进行校准取决于特定移植版本。