آیا میدانید الفباي مردم هاوايي 12 حرف دارد
آزادي اراده را اغلب مردم بر سر زبان دارند اما کمتر در
ته دل. از دانته |
![]() |
کامپایلر قدرتمند Atmel AVR Studio 6 نسخه 6
دانلود شبیه ساز قدرتمند proteus 7.10 SP0 همراه با کرک و لایسنس و کتابخانه
آموزش گام به گام برنامه نویسی AVR به زبان C
کتابخانه شبیه ساز LCD های نوکیا برای پروتیوس
پروژه تولید سیگنال های ویدیوئی PAL با AVR به زبان اسمبلی
پروژه ارتباط AVR با RS232 و برنامه کنترلی با ویژوال بیسیک
اتصال کیبورد 4*4 به میکروکنترلر AVR و نمایش روی سون سگمنت|
اسکن کیبورد 3×4 به زبان سی AVR و به صورت فایل کتابخانهای برای کدویژن
![]()
این بار یک مثال آموزشی و بسیار کاربردی برای کابران PicPars آماده کرده ام، امیدورام مورد رضایت شما واقع گردد. همانطور که می دانیم اتصال صفحه کلید به میکروکنترلرها در بسیاری از موارد برای ما مهم و کاربردی است، به عنوان مثال شما می خواهید یک ماشین حساب طراحی کنید یا یک قفل رمز و یا هر سیستم دیگری که نیاز است از کاربر اطلاعاتی توسط صفحه کلید دریافت شود. ما قبلا اتصال کیبورد 4*4 به میکروکنترلر AVR به زبان سی را آموزش داده ایم. که با هر بار فراخوانی تنها یک رقم را از کاربر میگیرد و بقیه کارها با برنامه نویس بود. به عنوان مثال شما می خواهید عدد صحیح 1390 را از کاربر دریافت کنید حال آن که کاربر این عدد را به صورت تک تک 1 3 9 0 وارد کرده و در برنامه اصلی تان آنها را در متغیرهایی جداگانه قرار می دهید، تا اینجا شما اعداد را به صورت جداگانه در اختیار دارید و نه به صورت یک عدد صحیح، و باید در برنامه اصلی تابعی برای به هم چسپاندن این ارقام بنویسید که کاری تقریبا خسته کننده است... اما امروز من یک تابع پیشرفته به صورت هدر برای شما نوشته ام که تمامی این مشکلات را حل میکند و دیگر هیچ نیازی به برنامه نویسی در این مورد نخواهید داشت. این فایل هدر همراه با یک مثال آموزشی، که نحوی استفاده از آن را برای شما توضیح می دهد در اینجا ضمیمه شده است و من نیز توضیحاتی در این باره خواهم داد. در هر برنامهای که خواستید از کیبورد 3×4 استفاده کنید ابتدا این فایل هدر را در پوشه ای به نام header در مسیر اصلی پروژه قرار داده و سپس به صورت زیر آن را به برنامه اصلی اضافه می کنید:
#include <header/keypad_advance.h>
حال در تابع اصلی و یا هر تابع دیگر که نیاز به دریافت اطاعات از صفحه کلید را داشتید کافی است تابع زیر را فراخوانی کنید:
key = keypad(10,6,1,5,1);
این تابع دارای 5 پارامتر ورودی به شرح زیر میباشد:
به همین راحتی شما می توانید از دنیای بیرون اعداد را به صورت صحیح وارد میکرو کنید. نکات کلیدی و مهم: چون از متغیر float در دستور sprintf استفاده شده باید در قسمت config پروژه تون در نرم افزار کدویژن در قسمت (sprintf) از منوی کرکرهای گزینه float را انتخاب نمائید. در صورتی که زمان وارد کردن اطلاعات به پایان برسد مقدار عددی 1- بازگشت داده خواهد شد، شما از این عدد می توانید برای سایر دستورات کنترلی خود استفاده نمائید. تابع به صورتی نوشته شده است که مثلا ماکزیمم ارقام وردی 6 انتخاب شده است حال اگر کاربر مثلا 4 رقم وارد کند و بعد کلید # را فشار دهد میکرو از 2 رقم باقی مانده را صرف نظر خواهد کرد و مبنا را بر چهار رقم خواهد گذاشت و محاسبات تبدیل آنها به عدد صحیح را انجام خواهد داد. همچنین در صورتی که کلید * فشار داده شود تمامی اطلاعات ورودی پاک شده و کاربر مجددا میتواند اطاعات را وارد نماید. نوع متغیر بازگشتی این تابع به صورت پیش فرض float می باشد اما با توجه به نیاز شما و ماکزیمم ارقام ورودی می توانید این متغیر را به نوع های long int و int و حتی char کاهش دهید که در این صورت باید در تابع keypad مقدار زیر را نیز تغییر دهید:
float keypad(
float number_out float key
این برنامه صورت کاملا اختصاصی و متن باز در وب سایت PicPars.com ارائه شده، هر گونه کپی برداری از آن تنها با ذکر منبع مجاز می باشد!
برنامه نویسی شده توسط سید محسن قاسمیان
لینک ثابت این صفحه: © کپی برداری از مطالب این سایت تنها با ذکر منبع مجاز می باشد
در صورت داشتن هر گونه سوال، نظر و پیشنهاد راجب این مطلب میتوانید در قسمت نظرات همین صفحه مطرح نمائید. همچنین با شرکت در نظر سنجی های سایت، ما را در بهبود بخشیدن به مطالب یاری کنید. صفحه کلید صفحه کلید 3.4 کیبور اسکن صفحه کلید کار با صفحه کلید اتصال صفحه کلید به میکروکنترلر درایور هدر کدویژن کتابخانه هدر کیبورد هدر صفحه کلید اسکن صفحه کلید 3.4 تابع دریافت عدد از کیبورد خواندن اعداد از صفحه کلید مرتبط باموضوع : دستورات break و switch و goto و continue و ... قسمت 4 [ يكشنبه، 8 فروردين ماه، 1389 ] 4229 مشاهده
کار با تایمر کانتر صفر AVR در حالت CTC به زبان سی کدویژن CodeVision [ يكشنبه، 9 آبان ماه، 1389 ] 5011 مشاهده
انواع حلقه های for و while قسمت 3 [ سه شنبه، 11 اسفند ماه، 1388 ] 3878 مشاهده
آموزش AVR به زبان سی C [ چهارشنبه، 21 بهمن ماه، 1388 ] 8120 مشاهده
متغیرها، آرایه ها، رشته ها و مقدار دهی در زبان C [ چهارشنبه، 21 بهمن ماه، 1388 ] 3474 مشاهده
| ||
آیا این مطالب مورد رضایت شما واقع گردید؟ لطفا با رای دادن به این مطلب ما را در بهبود بخشیدن به مطالب کمک کنید. با اینکار به سایر دوستانتان نیز کمک خواهید کرد.
|
| ||||||||||||||||||||||||||||||||||||||||||
رویداد ها: روز بزرگداشت ملاصدرا - روز بهره وری و بهینه سازی مصرف |