جدول المحتويات:

العداد باستخدام زر الضغط - Tinker Cad: 3 خطوات
العداد باستخدام زر الضغط - Tinker Cad: 3 خطوات

فيديو: العداد باستخدام زر الضغط - Tinker Cad: 3 خطوات

فيديو: العداد باستخدام زر الضغط - Tinker Cad: 3 خطوات
فيديو: مشروع اردوينو: تحكم بليد من خلال 3 أزرار 2024, شهر نوفمبر
Anonim
Image
Image
المكونات المطلوبة
المكونات المطلوبة

بمجرد حصولك على زر ضغط يعمل ، فأنت غالبًا ما تريد القيام ببعض الإجراءات بناءً على عدد المرات التي يتم فيها الضغط على الزر. للقيام بذلك ، تحتاج إلى معرفة متى تتغير حالة الزر من إيقاف تشغيل إلى تشغيل ، وإحصاء عدد مرات حدوث هذا التغيير في الحالة. وهذا ما يسمى باكتشاف تغير الحالة أو اكتشاف الحافة. في هذا البرنامج التعليمي نتعلم كيفية التحقق من تغيير الحالة ، ونرسل رسالة إلى Serial Monitor بالمعلومات ذات الصلة ونحسب أربعة تغييرات في الحالة لتشغيل وإيقاف تشغيل LED.

الخطوة الأولى: المكونات المطلوبة:

المكونات المطلوبة
المكونات المطلوبة
المكونات المطلوبة
المكونات المطلوبة
المكونات المطلوبة
المكونات المطلوبة

1. Arduino UNO

2. اللوح

3. زر الضغط

4. المقاوم

5. أسلاك توصيل

الخطوة 2: مخطط الدائرة:

Image
Image

قم بتوصيل ثلاثة أسلاك باللوحة. الأول ينتقل من ساق واحدة من الزر الانضغاطي عبر المقاوم المنسدل (هنا 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 ؛ }}

موصى به: