فى هذه المقالة أشرح كيفية توصيل 5
مفاتيح Push Buttons على طرف Pin واحد فقط من
أطراف الـ PIC microcontroller ، حيث يتم داخل الكود تحديد رقم المفتاح الذى تم الضغط عليه ليقوم بتنفيذ أمر
معين.
تعتمد فكرة الدائرة على قانون مقسم الجهد، ففى الشكل التالى يتم توصيل خمسة مقاومات، كل مقاومة واحد كيلو أوم، مع خمسة مفاتيح، وتتصل جميع هذه المفاتيح مع بعضها من أحد أطرافها، وعند الضغط على أحد هذه المفاتيح فانه سيوجد جهد على تلك الأطراف المتصلة مع بعضها تتغير قيمته على حسب رقم المفتاح الذى تم الضغط عليه.
والصورة التالية لشاشة الأوسلسكوب توضح
مقدار الجهد الناتج عند الضغط على هذه المفاتيح، كل على حده.
كما يتم استخدام مقاومة فى حدود 100
كيلو أوم ، كما فى الصورة التالية ففى حالة عدم الضغط على أى مفتاح تجعل الجهد الواقع على الطرف رقم 33 فى الميكروكنترولر متصل بالارضى فيقرأ صفر فولت، حيث لا يجب جعل الطرف غير متصل بجهد عالى او منخفض (عائم ).
ويتم توصيل تلك الأطراف المتصلة مع
بعضها على أحد أطراف الميكروكنترولر التى تقوم بقراءة القيم التماثلية Analog pin، حيث يتم
تحويل تلك القيم التماثلية الى قيم رقمية تقع فى المدى من 0 الى 1023، ويتم
مقارنتها داخل الكود لمعرفة رقم المفتاح الذى تم الضغط عليه، لإضاءة LED واحد من
الخمسة LEDs المستخدمة حسب رقم المفتاح الذى
تم الضغط عليه.
والشكل التالى هو مخطط لتوصيل
الدائرة.
والجدول التالى يوضح المكونات
المستخدمة فى الدائرة
وسنستخدم الأطراف الموضحة فى الشكل
التالى والموجودة على جسم الميكروكنترولر
والصور التالية توضح كيفية توصيل
الدائرة على لوحة التجارب
والكود التالى خاص بتشغيل الدائرة،
وتمت كتابته بلغة mikroC،
وقد قمت بالتعليق بجانب الأوامر
للتوضيح، ويعتمد الكود على الدالة Key_Press والتى تقوم
بقراءة الجهد التماثلى الموجود على قناة
الادخال التماثلى AN12 وتحويله الى جهد
رقمى، ثم التفرع لمعرفة رقم المفتاح الذى تم الضغط عليه ، والعودة بقيمته.
والفيديو التالى يوضح تشغيل الدائرة
العملية
خالص تحياتى
م. محمد يوسف
السلام عليكم أيها الأستاذ المحترم ...ربنا يكرمك ويزيدك من فضله ويحميك من كل مكروه... أحبك في الله.
ردحذفالأستاذ الفاضل (إني أرى أن الأطراف المتصلة مع بعض هي بالأساس متصلة إتصالا مباشرا بالسالب لذلك لم أفهم فائدة مقاومة ال 100كيلو أوم التي أشرت إليها."كما يتم استخدام مقاومة فى حدود 100 كيلو أوم ، كما فى الصورة التالية حتى يصبح جهد الأطراف المتصلة مع بعضها مساويا للصفر فولت، وذلك فى حالة عدم الضغط على أى مفتاح."
لك مني أطيب تحية.
وعليكم السلام ورحمة الله وبركاته، أحبك الذى أحببتنى فيه.
حذفبالنسبة للمقاومة 100 كيلو اوم، لها فائدة فى حالة عدم الضغط على أى مفتاح حيث تجعل الجهد الواقع على الطرف رقم 33 فى الميكروكنترولر متصل بالارضى فيقرأ صفر فولت، حيث لا يجب جعل الطرف غير متصل بجهد عالى او منخفض (عائم )، تم تعديل الشرح ليصبح أكثر وضوحا، شكرا جزيلا لحضرتك.
السلام عليكم ، فكرة رائعه جدا لاستخدام الادخال التماثلي ، انا تابعت دروسك الخاصة بالمايكروكونترولر واعجبني اسلوبك في توصيل المعلومة واقدر لك كم بذلت من جهد في ذلك ، اخي العزيز انا مهندس سيطرة ونظم ولي خبرة بسيطة في مجال برمجة المايكروكونترولر بالمايكرو سي واستخدم في اغلب مشاريعي pic16f677 , اريد ان اوسع معلوماتي من خلالك لذا ارسلت لك طلب شراء الاسطوانة الخاصة بدروس المايكروكونترولر ، فارجو الرد ، وشكرا
ردحذفاخوك المهندس جاسم من العراق
وعليكم السلام ورحمة الله مهندس جاسم، أسعدنى جدا متابعة حضرتك، تم الرد على رسالتك، خالص تحياتى وشكرى لك.
حذفجزاك الله كل خير يابشمهندس محمد يوسف
ردحذفانت رجل مجتهد ولكل مجتهدا تصيب والله يعطيك العافيه
ردحذفيابشمهندس محمد يوسف
ربنا يبارك فى حضرتك، شكرا جزيلا.
حذف