Home / میکروکنترلر / آموزش میکروکنترلر AVR / اتصال صفحه کلید ۴*۴ به میکرو AVR – بسکام

اتصال صفحه کلید ۴*۴ به میکرو AVR – بسکام

با سلام خدمت شما دوستان عزیز و همراهان الکترولب
با توجه به سوالات شما دوستان از ما متوجه این موضوع شدیم که بسیاری از دوستان در مباحث مبتدی اشکالاتی دارند به همین خاطر توصیه من و اقای عزتی بر این هست که شما دوستان مباحث ساده ای مانند اتصال LCD کاراکتری و  صفحه کلید به میکرو راه اندازی بخش مبدل انالوگ به دیجیتال میکرو وخیلی از مباحث پایه رو که در الکترولب مورد بحث قرار میگیره رو به صورت جدی تری دنبال کنید. پس براین شدیم که دوستم آقای عزتی در قسمت برنامه نویسی به زبان C و من نیز در قسمت برنامه نویسی به زبان بسکام مباحث پایه رو به صورت ساده براتون بگیم پس شروع میکنیم.

برای دسترسی به  لیست کامل آموزش AVR به زبان C می توانید از صفحه زیر استفاده کنید:

آموزش AVR

با تکمیل شدن آموزش AVR با بسکام لیست کامل این آموزش ها نیز منتشر می شود.

اتصال صفحه کلید ۴*۴ به میکرو AVR :

ابتدا نحوه اتصال کیپد 4*4 به میکرو رو با هم یاد میگیریم برای شروع بهتره که یک کیپد تهیه کنید قیمتی در حدود 4تومن داره البته الان به این قیمت هست این کیپد از کلید های فشاری به نام پوش باتن به صورت ماتریسی به هم وصل شده اند تشکیل شده پس یه کیپد 4*4 از 16 تا دکمه تشکیل شده خب کیپدهای 3*3 و4*5 ویا بیشتر نیز وجود دارد در این آموزش ما از کیپد 4*4 استفاده میکنیم
4*4 یعنی 4 تا ستون و 4 تا سطر یعنی 8 تا سیم داریم که باید به میکرو وصل کنیم خوشبختانه میکرو کنترلر  AVR هشت بیتی هست پس یک پورت از میکرو رو این صفحه کلید استفاده میکنه که یک مسئله بزرگی هست البته با استفاده از قطعات جانبی میتوان تعداد سیم ها رو کاهش داد که هدف این اموزش این نیست
حالا میریم سراغ برنامه میکرو
طبق روال میکرو مورد نظر رو تعریف میکنیم و همچنین پشته های سخت افزاری و نرم افزاری متعادلی رو هم تعریف میکنم باود ریت رو هم 9600 در نظر میگیریم

منظور از باود ریت نرخ ارسال داده به پورت سریال هست یعنی هر ثانیه 9600 بیت رو به پورت سریال ارسال میکنیم یاد آور شوم که در این اموزش برای نمایش اعدادخوانده شده از پورت سریال استفاده میکنیم در واقع توسط محیط ترمینال بسکام کد اسکی مربوط به هر کلید فشرده شده توسط شما .در این محیط نمایش داده میشود که عکس هایی از این محیط در آخر برای شما گذاشتم.
کد زیر نیز مربوط به تعریف وتعیین پورتی از میکروکه قرار است به کیپد وصل شود را نمایش میدهد:

البته این دستور ادامه نیز دارد که میتوان نوع کیپد را که6*4هست ویا … رو تعیین کرد که به طور پیش فرض 4*4 تعیین میشود اصل دستور به صورت زیر میباشد:

گفتیم که 8 پایه برای اتصال نیاز است اگر صفحه کلید 6*4 باشد دو پایه دیگر نیاز داریم که این دو پایه را با دستور بالا تعیین میکنیم که به کدام پایه های میکرو وصل شود
توسط دستور زیر 2 تا متغیر تعریف میکنیم که در یکی مقدار کد اسکی خوانده شده توسط میکرو از کیپد قرار میگیرد ودیگری برای مقایسه مقدار قبلی کد اسکی خوانده شده از کیپد که برای جلوگیری از فرستادن دوباره همان مقدار به پورت سریال

دو دستور زیر نیز متنی را به پورت سریال میفرستد که میتوانید در عکس ها مشاهده کنید

 اما کدهای اصلی برنامه اتصال صفحه کلید ۴*۴ به میکرو AVR :

توسط دستور زیر مقدار کد اسکی کیپد خوانده میشود و در متغیری که از جنس بایت میباشد قرار میگیرد اگر هیچ کلیدی فشرده نشده باشد مقدار 16 در متغییر قرار میگیرد در ضمن مقدار صفحه کلید 4*4 از 0 تا 15 میباشد اگر سطر وستون اشتباه وصل شود هیچ مشکلی پیش نمیاید فقط باید قبل از هر پروژه ای که میخواهید شروه کنید اول قلق گیری کنید و بدانید که کدام دکمه کدام کد اسکی را میفرستد.

اما کد نهایی که شامل حلقه بینهایت و بررسی اینکه اگر مقدار 16 ویا عددی تکراری باشد به پورت سریال نفرستد:

 شماتیک مدار اتصال صفحه کلید ۴*۴ به میکرو AVR :

keypad electrolab

اما پورت سریال و محیط ترمینال:

ابتدا مدار را به پورت سریال وصل کنید اگر از مبدل USB به سریال استفاده میکنید مبدل را به پورت سریال وصل کنید در قسمت نوار ابزار ایکن زیر را انتخاب کنید و تنطیمات رو انجام بدبد

xc

پورتی را که مبدل به ان وصل است را انتخاب کنید و دکمه تایید را بزنید.

ffrw
سپس تغذیه ی مدار رو وصل کنید.
در این صورت دو سطر نوشته ظاهر میشود من با زدن دکمه هایی از کیپد اعداد در شکل به وجود اومده تصاویری از مدار را هم در زیر هست:

terminal

دانلود پروژه بسکام

دانلود

با ارزوی موفقیت برای شما : عباسزاده

 

About یونس عباس زاده

Check Also

معرفی خانواده ی میکروکنترلر STM8

در الکترولب مطلبی در مورد میکروکنترلر های 8 بیتی STM8 نداشتیم با توجه به قیمت ...

3 comments

  1. با عرض سلام خدمت دوست عزيز
    من برنامه بيسكام شمارو كامپايل كردم نشد
    خطا ميداد
    همه نوشته هاي مربوط به كيپد رو پاك كردم –فقط جمله هاي پرينت رو گذاشتم بمونه-نوشته روي ترمينال ظاهر شد اما هي تكرار ميشد
    ميشه راهنماييم كنين فقط يك بار نوشته بشه و تكرار نشه
    متشكرم

  2. منمنونم که حد اقل برای دانلود به مشکل بر نخورد

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.