class ADC – analoog-naar-digitaalconversie

De ADC-klasse omhult een enkel analoog-naar-digitaalconverterkanaal dat een spanning op een pin (of een van de analoge kanalen op de chip) bemonstert en de gediscretiseerde waarde teruggeeft.

Voorbeeldgebruik:

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

Constructors

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

Construeer een ADC-object voor de analoge bron die wordt aangeduid met id. De geaccepteerde vormen zijn:

  • een geheel getal als kanaalnummer (018 op STM32, poortspecifiek elders);

  • een Pin-object, of een board-pintekenreeks zoals "P6" – de pin moet analoog-geschikt zijn;

  • een van de constanten voor interne kanalen (CORE_TEMP, CORE_VREF, CORE_VBAT, VREF of CORE_VDD) om de interne sensoren van de MCU uit te lezen. Alleen STM32.

Methoden

read_u16() int

Bemonster het analoge kanaal eenmaal en geef het resultaat terug als een 16-bits geheel getal zonder teken (065535). ADC’s met een lagere resolutie worden links uitgelijnd in het 16-bits bereik, zodat de poortspecifieke ruwe resolutie verborgen blijft.

read_uv() int

Bemonster het analoge kanaal en geef het resultaat in microvolt terug. De uitlezing wordt gekalibreerd ten opzichte van de interne referentie waar de hardware dit ondersteunt. Alleen mimxrt-poort.

Constanten

De onderstaande constanten zijn alleen beschikbaar op de STM32-poort; geef ze door als het id-argument om een ADC te construeren die een van de analoge sensoren op de chip uitleest. Het resultaat van read_u16() is de ruwe 16-bits uitlezing van het kanaal; gebruik voor gekalibreerde waarden de helpers op pyb.ADCAll.

VREF: int

Externe spanningsreferentiekanaal.

CORE_VREF: int

Intern 1.21 V (nominaal) spanningsreferentiekanaal (VREFINT).

CORE_TEMP: int

Intern chiptemperatuursensorkanaal.

CORE_VBAT: int

Backupbatterijspanningskanaal (VBAT).

CORE_VDD: int

MCU-voedingsrailkanaal (VDDA).