(Bascom AVR)اتصال avr به عنوان کیبرد یا Atemu به کامپیوتر در محیط بسکام(مهندسی برق _ الکترونیک)
پژوهشگر و نویسنده: دکتر ( افشین رشید )
نکته مهم: اتصال avr به عنوان کیبرد به کامپیوتر، که در بسکام به نام Atemu نام گذاری شده رایگان نبوده و کامپایلر در هنگام کامپایل کردن برنامه های مربوطه( که در زیر دو مورد آن موجود است ) از شما خطای عدم وجود لایبری را میگیرد.
شما باید در help بسکام گزینه ی EMULATOR_AT را جستجو کنید ، در صفحه پیدا شده طریقه تهیه لایبری آمده است. شما میتوانید بر عکس حالات با لا را با چند دستور ساده زیر انجام دهید ، یعنی یک میکرو avr را به پورت کیبرد که در پشت کامپیوتر قرار دارد ، متصل کنید و اطلاعات مورد نیاز را برای کامپیوتر ارسال کنید، راه اندازی این مورد به صورت زیر است :
CONFIG Atemu = int , DATA = data, CLOCK=clock
Int : شما میتوانید از وقفه صفر یا یک برای این مورد استفاده کنید ( int0 یا int1 (Data نام پایه ای از میکرو است که سیم دیتای پورت کیبرد کامپیوتر به آن متصل میشود.(سیم دیتای سوکت کیبرد باید به پایه ورودی وقفه متصل شود(شما مجازید از دو پایه int0 و int1 ) پای16 و 17 میکرو مگا 16( استفاده کنید)
Clock: نام پایه ای از میکرو است که سیم کلاک پورت کیبرد کامپیوتر به ان متصل میشود. با دستور زیر میتوانید کد های دلخواه را به کیبرد را به کامپیوتر ارسال کنید
SENDSCANKBD label | var
Label نام برچسبی است که کد در ان قرار دارد (شما میتوانید چند کد را مانند مثال پشت سر هم نوشته و انها را به کامپیوتر بفرستید)
قدمی بعدی فعال سازی وقفه سراسری (هنگامی که میخواهیم از وقفه استفاده کنیم باید ان را فعال کنیم ، با دستور که نامبرده میشود تمامی وقفه ها فعال میشوند) است:
Enable Interrupts
مرحله بعدی معرفی پایه های میکرو است که باید به پورت کیبرد موجود در پشت کامپیوتر متصل شود:
Config Atemu = Int1 , Data = Pind.3 , Clock = Pinb.0
در حالت بالا پایه کلاک پورت کیبرد به پورت 0.b و پایه دیتا آن به ورودی وقفه 1) پورت 3.d (متصل است ،(درصوتی که از وقفه 0 استفاده شود ، پایه دیتا باید به پورت 2.d متصل شود)
در مرحله بعد یک حلقه ایجاد میکنیم تا میکرو مدام عبارت را به کامپیوتر ارسال کند:
Do
اتصال avr به عنوان کیبرد به کامپیوتر، که در بسکام به نام Atemu نام گذاری شده رایگان نبوده و کامپایلر در هنگام کامپایل کردن برنامه های مربوطه از شما خطای عدم وجود لایبری را میگیرد.