الدالة digitalWrite()
في أردوينو
تكتب الدالة digitalWrite()
إمَّا القيمة HIGH
أو القيمة LOW
على رجل رقمية معيَّنة.
إن هُيِّئَت الرجل على أنَّها خرج (أي OUTPUT
) عبر الدالة pinMode()
، فسيُضبَط جهد تلك الرجل إلى القيمة المقابلة التي هي: 5V (أو 3.3V في اللوحات ذات الجهد 3.3V) للقيمة HIGH
، أو 0V (الأرضي) للقيمة LOW
.
إن هُيِّئَت الرجل على أنَّها دخل (أي INPUT
)، فستُفعِّل (مع HIGH
) أو ستعطِّل (مع LOW
) الدالة digitalWrite()
مقاومة الرفع الداخلية (internal pullup resistor) المرتبطة برجل الدخل تلك. يُنصَح باستعمال القيمة INPUT_PULLUP
مع الدالة pinMode()
لتفعيل مقاومة الرفع الداخلية مباشرةً. اطلع على «الدرس التعليمي حول الأرجل الرقمية» لمزيدٍ من المعلومات.
إن لم تهيَّأ رجلٌ إلى OUTPUT
عبر الدالة pinMode()
ووُصِل ضوء ليد معها، فقد يبدو ضوء الليد خافتًا عند استدعاء digitalWrite(HIGH)
مع هذه الرجل. دون تهيئة الرجل بصريح العبارة عبر الدالة pinMode()
، ستفعِّل الدالة digitalWrite()
مقاومة الرفع الداخلية التي ستعمل على تنظيم التيار الكبير المار آنذاك.
البنية العامة
digitalWrite(pin, value)
المعاملات
pin
عددٌ يشير إلى الرجل الرقمية المراد كتابة القيمة value
عليها.
value
القيمة HIGH
أو LOW
المراد كتابتها على الرجل pin
.
القيم المعادة
لا يعاد أي شيء.
أمثلة
ضبط وضع الرجل 13 الرقمية إلى رجل خرج ثم قلب قيمتها من HIGH
إلى LOW
وبالعكس كل ثانية واحدة:
void setup()
{
pinMode(13, OUTPUT); // ضبط الرجل 13 الرقمية على أنها رجل خرج
}
void loop()
{
digitalWrite(13, HIGH); // HIGH ضبط قيمة الرجل 13 الرقمية إلى
delay(1000); // انتظار مرور ثانية واحدة
digitalWrite(13, LOW); // LOW ضبط قيمة الرجل 13 الرقمية إلى
delay(1000); // انتظار مرور ثانية واحدة
}
ملاحظات وتحذيرات
- يمكن استعمال أرجل الدخل التشابهية على أنَّها أرجل رقمية أيضًا، ويشار إليها آنذاك بالشكل A0، أو A1 ...إلخ.
انظر أيضًا
- الدالة
digitalRead()
: تقرأ قيمة أحد الأرجل الرقمية التي تكون إمَّاHIGH
أوLOW
. - الدالة
pinMode()
: تهيِّئ رجل معيَّنة لتسلك إمَّا سلوك دخل (input) أو سلوك خرج (output). - درس تعليمي يشرح الأرجل الرقمية في لوحة أردوينو.