الفرق بين المراجعتين لصفحة: «Arduino/interrupts/nointerrupts»
< Arduino | interrupts
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
سطر 32: | سطر 32: | ||
[[تصنيف: Arduino]] | [[تصنيف: Arduino]] | ||
[[تصنيف: Arduino Function]] | [[تصنيف: Arduino Function]] | ||
[[تصنيف: Arduino | [[تصنيف: Arduino Interrupt]] |
المراجعة الحالية بتاريخ 07:43، 21 أكتوبر 2018
تعطِّل الدالة noInterrupts()
عمل جميع المقاطعات في لوحة أردوينو. يمكن إعادة تفعيلها عبر استدعاء الدالة interrupts()
.
تسمح المقاطعات بتنفيذ مهام معيَّنة في الخلفية وتكون مفعَّلة افتراضيًّا. لن تعمل بعض الدوال وقد تُتجاهل بعض الاتصالات الواردة إن كانت المقاطعات معطَّلة. يمكن للمقاطعات أن تُحدِث خللا بسيطًا في توقيت البرنامج؛ مع ذلك، قد تُعطَّل في بعض الأجزاء المهمة والحرجة من الشيفرة.
البنية العامة
noInterrupts()
القيم المعادة
لا يعاد أي شيء.
أمثلة
استعمال الدالة noInterrupts()
لتعطيل المقاطعات في الأجزاء المهمة من الشيفرة ثم إعادة تفعيلها:
void setup() {}
void loop()
{
noInterrupts();
// جزء حرج وحساس جدًا للتوقيت هنا
interrupts();
// إعادة تفعيل المقاطعات لبقية أجزاء الشيفرة
}
انظر أيضًا
- الدالة
attachInterrupt()
: تفعِّل مقاطعة خارجية معيَّنة على إحدى الأرجل في لوحة أردينو. - الدالة
detachInterrupt()
: تعطِّل عمل مقاطعة خارجية معيَّنة مرتبطة بإحدى أرجل اللوحة. - الدالة
interrupts()
: تعيد تفعيل عمل المقاطعات بعد إيقافها عبر استدعاء الدالةnointerrupts()
.