بازدیدها: 2461
در این مثال آموزشی هدف ما این است که کیبورد 4×4 متصل به میکروکنترلر AVR را اسکن کنیم و سپس مقدار کلید فشرده شده را بر روی نمایشگر سون سگمنت نشان دهیم. در رابطه با اسکن کیبورد 4×4 و توضیحات آن قبلا به طور کامل بحث شده و در این مطلب از توضیحات در این باره اجتناب میکنیم. لینک صفحه توضیحات قبلی در پایین همین مطلب قرار داده شده است.
در اینجا تنها تغییرات نسبت به برنامه قبلی این است که بجای LCD از سون سگمت استفاده کرده ایم، که برای اینکار ابتدا توابع BCD را در فایل هدر #include <bcd.h> فراخوانی می کنیم. در ادامه خواهیم گفت که چگونه باید از این توابع استفاده نمود.
while (1) { keypad(); PORTD=bin2bcd(key); }
با استفاده از تایع keypad که قبلا توضیح داد شده مقدار کلید فشرده شده را از آرایه برمی داریم و در متغییر key ذخیره میکنیم، حالا به کمک تابع bin2bcd عدد مربوطه را به bcd فشرده تبدیل میکنم. (یعنی دو عدد BCD در یک متغییر 8 بیتی) اکنون این عدد را روی پورت D کپی میکنیم. در این مثال از آیسی های 74LS248 که مخصوص کد BCD می باشند استفاده کرده ایم. از مزایای این آیسی این است که می توان به کمک آنها دو تا سون سگمنت را به یک پورت 8 بیتی وصل کرد.
در صورت داشتن هرگونه سوال می توانید در قسمت نظرات مطرح نمائید.
2 Comments
سلام رمز فایل برای خارج کردن از حالت زیپ چیه/؟
www.picpars.com