class ADC – 아날로그-디지털 변환

ADC 클래스는 핀(또는 온칩 아날로그 채널 중 하나)의 전압을 샘플링하고 그 이산화된 값을 반환하는 단일 아날로그-디지털 변환기 채널을 래핑합니다.

사용 예제:

from machine import ADC, Pin

adc = ADC(Pin("P6"))      # ADC channel on header pin P6 (PA5)
val = adc.read_u16()      # raw reading scaled to 0..65535

생성자

class machine.ADC(id: int | str | Pin) ADC

id로 식별되는 아날로그 소스에 대한 ADC 객체를 생성합니다. 허용되는 형식은 다음과 같습니다:

  • 정수 채널 번호(STM32에서는 018, 그 외에서는 포트별로 다름);

  • Pin 객체 또는 "P6"과 같은 보드 핀 문자열 – 핀은 아날로그를 지원해야 합니다;

  • MCU의 내부 센서를 읽기 위한 내부 채널 상수(CORE_TEMP, CORE_VREF, CORE_VBAT, VREF 또는 CORE_VDD) 중 하나. STM32 전용입니다.

메서드

read_u16() int

아날로그 채널을 한 번 샘플링하고 결과를 부호 없는 16비트 정수(065535)로 반환합니다. 더 낮은 해상도의 ADC는 16비트 범위로 좌측 정렬되므로 포트별 원시 해상도는 숨겨집니다.

read_uv() int

아날로그 채널을 샘플링하고 결과를 마이크로볼트 단위로 반환합니다. 하드웨어가 지원하는 경우 측정값은 내부 기준전압에 대해 보정됩니다. mimxrt 포트 전용입니다.

상수

아래 상수는 STM32 포트에서만 사용할 수 있습니다. 온칩 아날로그 센서 중 하나를 읽는 ADC를 생성하려면 id 인수로 전달하십시오. read_u16()의 결과는 채널의 원시 16비트 측정값입니다. 보정된 값을 얻으려면 pyb.ADCAll의 헬퍼를 사용하십시오.

VREF: int

외부 전압 기준 채널입니다.

CORE_VREF: int

내부 1.21 V(공칭) 전압 기준 채널(VREFINT)입니다.

CORE_TEMP: int

내부 다이 온도 센서 채널입니다.

CORE_VBAT: int

백업 배터리 전압 채널(VBAT)입니다.

CORE_VDD: int

MCU 공급 레일 채널(VDDA)입니다.