klasa ADC – analogno-digitalna pretvorba

Klasa ADC obavija jedan kanal analogno-digitalnog pretvarača koji uzorkuje napon na pinu (ili na jednom od analognih kanala na čipu) i vraća njegovu diskretiziranu vrijednost.

Primjer korištenja:

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

Konstruktori

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

Konstruira ADC objekt za analogni izvor identificiran s id. Prihvaćeni oblici su:

  • cijeli broj kanala (018 na STM32, drugdje ovisno o portu);

  • objekt Pin, ili niz znakova s pinom ploče poput "P6" – pin mora podržavati analogni rad;

  • jedna od konstanti internih kanala (CORE_TEMP, CORE_VREF, CORE_VBAT, VREF ili CORE_VDD) za čitanje internih senzora MCU-a. Samo STM32.

Metode

read_u16() int

Jednom uzorkuje analogni kanal i vraća rezultat kao 16-bitni cijeli broj bez predznaka (065535). ADC-ovi niže razlučivosti poravnavaju se ulijevo unutar 16-bitnog raspona tako da je sirova razlučivost ovisna o portu skrivena.

read_uv() int

Uzorkuje analogni kanal i vraća rezultat u mikrovoltima. Očitanje se kalibrira prema internoj referenci gdje to hardver podržava. Samo mimxrt port.

Konstante

Konstante u nastavku dostupne su samo na STM32 portu; proslijedite ih kao argument id za konstruiranje ADC koji čita jedan od analognih senzora na čipu. Rezultat read_u16() sirovo je 16-bitno očitanje kanala; za kalibrirane vrijednosti koristite pomoćne metode na pyb.ADCAll.

VREF: int

Kanal vanjske naponske reference.

CORE_VREF: int

Kanal interne naponske reference od 1.21 V (nominalno) (VREFINT).

CORE_TEMP: int

Kanal internog senzora temperature čipa.

CORE_VBAT: int

Kanal napona rezervne baterije (VBAT).

CORE_VDD: int

Kanal napajanja MCU-a (VDDA).