Menu
CoddyTech
flag Ar iconالعربيةdown icon

قراءة حالة زر

جزء من قسم الدوائر الأولى في رحلة Arduino على Coddy. الدرس 22 من 22.

يمكن أن يكون المنفذ أيضًا مدخلًا: تقرأ اللوحة ما إذا كانت قيمته HIGH أو LOW.

يوصل هذا الزر المنفذ 2 بالأرضي (0 فولت) أثناء ضغطك عليه. وعندما يكون مرفوعًا، لا يكون المنفذ متصلًا بأي شيء، وقد يقرأ قيمًا عشوائية. يفعّل INPUT_PULLUP مقاومة سحب لأعلى داخل اللوحة، تُبقي المنفذ عند HIGH حتى يسحبه الزر إلى LOW:

pinMode(2, INPUT_PULLUP);

تعطي digitalRead(2) مستوى المنفذ. مع مقاومة السحب لأعلى، يقرأ الزر المضغوط LOW:

if (digitalRead(2) == LOW) {
  // الزر مضغوط
}
if وelse للاختيار، وdigitalWrite() للتحكم في LED، وSerial.println() للإبلاغ.

challenge icon

التحدي

سهل

الزر موصول بالمنفذ 2 ومصباح LED بالمنفذ 13. اجعل مصباح LED يضيء أثناء الضغط على الزر:

  • اضبط المنفذ 2 على INPUT_PULLUP
  • عندما تكون قيمة digitalRead(buttonPin) هي LOW، شغّل مصباح LED، واطبع Pressed وانتظر 200 ms (حتى لا يمتلئ السجل)
  • وإلا، أطفئ مصباح LED

اضغط على Run، واضغط باستمرار على الزر الأخضر على اللوحة، ثم اضغط على Check.

جرّب بنفسك

const int buttonPin = 2;
const int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {

}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الدوائر الأولى

تدرّب بنفسك: Playground لـ Arduino