ADC osztály – analóg-digitális átalakítás

Az ADC osztály egyetlen analóg-digitális átalakító csatornát csomagol be, amely egy lábon (vagy az egyik chipen lévő analóg csatornán) lévő feszültséget mintavételez, és visszaadja annak diszkretizált értékét.

Példa a használatra:

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

Konstruktorok

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

Létrehoz egy ADC objektumot az id által azonosított analóg forráshoz. Az elfogadott formák a következők:

  • egy egész szám csatornaszám (018 STM32 esetén, máshol portfüggő);

  • egy Pin objektum, vagy egy lap-lábazonosító karakterlánc, például "P6" – a lábnak analógra alkalmasnak kell lennie;

  • az egyik belső csatornakonstans (CORE_TEMP, CORE_VREF, CORE_VBAT, VREF vagy CORE_VDD) az MCU belső érzékelőinek beolvasásához. Csak STM32 esetén.

Metódusok

read_u16() int

Egyszer mintavételezi az analóg csatornát, és az eredményt előjel nélküli 16 bites egész számként adja vissza (065535). Az alacsonyabb felbontású ADC-k balra igazítva kerülnek a 16 bites tartományba, így a portfüggő nyers felbontás rejtve marad.

read_uv() int

Mintavételezi az analóg csatornát, és az eredményt mikrovoltban adja vissza. A leolvasás a belső referenciához van kalibrálva, ahol a hardver támogatja. Csak a mimxrt port esetén.

Konstansok

Az alábbi konstansok csak az STM32 porton érhetők el; add át őket az id argumentumként egy olyan ADC létrehozásához, amely az egyik chipen lévő analóg érzékelőt olvassa. A read_u16() eredménye a csatorna nyers 16 bites leolvasása; kalibrált értékekhez használd a pyb.ADCAll segédfüggvényeit.

VREF: int

Külső feszültségreferencia-csatorna.

CORE_VREF: int

Belső 1,21 V (névleges) feszültségreferencia-csatorna (VREFINT).

CORE_TEMP: int

Belső lapka-hőmérséklet érzékelő csatorna.

CORE_VBAT: int

Tartalék akkumulátor feszültségcsatornája (VBAT).

CORE_VDD: int

MCU tápsín-csatorna (VDDA).