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

تُنشئ كائن ADC للمصدر التماثلي المُعرَّف بـ id. الصيغ المقبولة هي:

  • رقم قناة صحيح (0 -- 18 على STM32، وخاص بالمنفذ في غير ذلك)؛

  • كائن Pin، أو سلسلة دبوس لوحة مثل "P6" -- ويجب أن يكون الدبوس قادرًا على التعامل مع الإشارة التماثلية؛

  • أحد ثوابت القناة الداخلية (CORE_TEMP أو CORE_VREF أو CORE_VBAT أو VREF أو CORE_VDD) لقراءة المستشعرات الداخلية للمتحكم. على STM32 فقط.

الدوال

read_u16() int

تأخذ عينة واحدة من القناة التماثلية وتُرجِع النتيجة كعدد صحيح غير مُوقَّع ذي 16 بتة (0 -- 65535). تُحاذى المحولات ذات الدقة الأقل إلى اليسار ضمن مدى الـ 16 بتة بحيث تُخفى الدقة الخام الخاصة بالمنفذ.

read_uv() int

تأخذ عينة من القناة التماثلية وتُرجِع النتيجة بالميكروفولت. تُعايَر القراءة مقابل المرجع الداخلي حيثما تدعم العتاد ذلك. على منفذ mimxrt فقط.

الثوابت

الثوابت أدناه متوافرة فقط على منفذ STM32؛ مرِّرها كوسيط id لإنشاء ADC يقرأ أحد المستشعرات التماثلية المدمجة في الشريحة. ونتيجة read_u16() هي القراءة الخام ذات الـ 16 بتة للقناة؛ وللحصول على قيم مُعايَرة استخدم الدوال المساعِدة في pyb.ADCAll.

VREF: int

قناة مرجع الجهد الخارجي.

CORE_VREF: int

قناة مرجع الجهد الداخلي 1.21 فولت (اسمي) (VREFINT).

CORE_TEMP: int

قناة مستشعر حرارة الشريحة الداخلي.

CORE_VBAT: int

قناة جهد بطارية النسخ الاحتياطي (VBAT).

CORE_VDD: int

قناة خط تغذية المتحكم (VDDA).