2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
بمجرد حصولك على زر ضغط يعمل ، فأنت غالبًا ما تريد القيام ببعض الإجراءات بناءً على عدد المرات التي يتم فيها الضغط على الزر. للقيام بذلك ، تحتاج إلى معرفة متى تتغير حالة الزر من إيقاف تشغيل إلى تشغيل ، وإحصاء عدد مرات حدوث هذا التغيير في الحالة. وهذا ما يسمى باكتشاف تغير الحالة أو اكتشاف الحافة. في هذا البرنامج التعليمي نتعلم كيفية التحقق من تغيير الحالة ، ونرسل رسالة إلى Serial Monitor بالمعلومات ذات الصلة ونحسب أربعة تغييرات في الحالة لتشغيل وإيقاف تشغيل LED.
الخطوة الأولى: المكونات المطلوبة:
1. Arduino UNO
2. اللوح
3. زر الضغط
4. المقاوم
5. أسلاك توصيل
الخطوة 2: مخطط الدائرة:
قم بتوصيل ثلاثة أسلاك باللوحة. الأول ينتقل من ساق واحدة من الزر الانضغاطي عبر المقاوم المنسدل (هنا 10 كيلو أوم) إلى الأرض. ينتقل الثاني من الضلع المقابل للزر الانضغاطي إلى العرض 5 فولت. يتصل الثالث بدبوس إدخال / إخراج رقمي (هنا دبوس 2) يقرأ حالة الزر.
عندما يكون الزر الانضغاطي مفتوحًا (غير مضغوط) لا يوجد اتصال بين ساقي زر الضغط ، لذلك يتم توصيل الدبوس بالأرض (من خلال المقاوم المنسدل) ونقرأ LOW. عندما يكون الزر مغلقًا (مضغوطًا) ، فإنه يقوم بإجراء اتصال بين ساقيه ، وربط الدبوس بالجهد ، حتى نقرأ ارتفاعًا. (لا يزال الدبوس متصلاً بالأرض ، لكن المقاوم يقاوم تدفق التيار ، وبالتالي فإن المسار الأقل مقاومة هو +5 فولت.) إذا قمت بفصل دبوس الإدخال / الإخراج الرقمي عن كل شيء ، فقد يومض مؤشر LED بشكل متقطع. هذا لأن الإدخال "عائم" - أي غير متصل بأي من الجهد أو الأرض. سيعود بشكل عشوائي إلى حد ما سواء كان مرتفعًا أو منخفضًا. لهذا السبب تحتاج إلى مقاوم منسدل في الدائرة.
الخطوة الثالثة: الكود:
لمزيد من المشاريع الممتعة تواصل معي على: Youtube:
صفحة الفيسبوك:
انستجرام:
زر int = 2 ؛
الباحث أ ، أنا = 0 ؛ إعداد باطل () {Serial.begin (9600) ؛ pinMode (زر ، الإدخال) ؛ } حلقة فارغة () {a = digitalRead (زر) ؛ إذا (أ == 1) {أنا = أنا + 1 ؛ Serial.print ("Counter =") ؛ Serial.println (i) ؛ } آخر {i = 0 ؛ }}