class ADC – analogdan dijitale dönüştürme

ADC sınıfı, bir pin (veya çip üzerindeki analog kanallardan biri) üzerindeki bir voltajı örnekleyen ve ayrıklaştırılmış değerini döndüren tek bir analogdan dijitale dönüştürücü kanalını sarmalar.

Örnek kullanım:

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

Yapıcılar

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

id ile tanımlanan analog kaynak için bir ADC nesnesi oluşturur. Kabul edilen biçimler şunlardır:

  • bir tamsayı kanal numarası (STM32’de 018, başka yerlerde porta özgü);

  • bir Pin nesnesi ya da "P6" gibi bir kart pini dizesi – pin analog yetenekli olmalıdır;

  • MCU’nun dahili sensörlerini okumak için dahili kanal sabitlerinden biri (CORE_TEMP, CORE_VREF, CORE_VBAT, VREF veya CORE_VDD). Yalnızca STM32.

Yöntemler

read_u16() int

Analog kanalı bir kez örnekler ve sonucu işaretsiz 16 bitlik bir tamsayı (065535) olarak döndürür. Daha düşük çözünürlüklü ADC’ler 16 bitlik aralığa sola hizalanır; böylece porta özgü ham çözünürlük gizlenir.

read_uv() int

Analog kanalı örnekler ve sonucu mikrovolt cinsinden döndürür. Donanımın desteklediği yerlerde okuma, dahili referansa göre kalibre edilir. Yalnızca mimxrt portu.

Sabitler

Aşağıdaki sabitler yalnızca STM32 portunda mevcuttur; çip üzerindeki analog sensörlerden birini okuyan bir ADC oluşturmak için bunları id argümanı olarak iletin. read_u16() sonucu, kanalın ham 16 bitlik okumasıdır; kalibre edilmiş değerler için pyb.ADCAll üzerindeki yardımcıları kullanın.

VREF: int

Harici voltaj referansı kanalı.

CORE_VREF: int

Dahili 1,21 V (nominal) voltaj referansı kanalı (VREFINT).

CORE_TEMP: int

Dahili kalıp sıcaklığı sensörü kanalı.

CORE_VBAT: int

Yedek pil voltajı kanalı (VBAT).

CORE_VDD: int

MCU besleme hattı kanalı (VDDA).