پاسخ : اتصال کیبرد عدد PS2 به AVR
من نگفتم کد اسکی اینتر 13 هست ...
منظورم این بود که بعضی کلید ها دستوری هستند و تشکیل شده از دو کد اسکی هستند ...
در مجموع من یه توضیح مختصری میدم تا رفع ابهام بشه
هر کلیدی که فشار میدهیم make code ارسال میشود ... و زمانی که دستمان از روی کلید رها کنیم make code همراه با Break code ارسال میشود ...
در حقیقت کد break code برای تشخیص رها کردن به کار گرفته میشود ... بنابراین کدی که برای ما خیلی مهمه Make code است.
هر کلیدی برای خودش یک make code دارد که این کد تا قبل از تبدیل به کد اسکی برای ما هیچ کاربردی ندارد ...
بنابراین باید کدهای Make code را با جدول لوکپ تبدیل به کد اسکی گردد ...
حالا
اینکه شما میگید چرا خونه 91 هست به خاطر اینه که کد make code کلید اینتر 5A است که اگر تبدیلش کنیم به مبنای ده میشه 90 . شمارش دیجیتال از صفر شروع میشه پس صفر تا 90 میشه 91 ...
بنابراین در جدول لوکپ باید خانه 91 را بگذاریم اون کدی که مربوط به کد اسکی هست ...
که البته باز هم میگم کلید اینتر کد اسکی نداره و تشکیل شده از دو کد اسکی دستوری آن کار اینتر را انجام میدهد ...
کدهای اسکی سه نوع هستند :
1- ASCII control characters (کارکترهای اسکی کنترلی یا دستوری)
2- ASCII printable characters (کارکترهای اسکی چاپی)
3- Extended ASCII characters (کارکترهای اسکی گسترش یافته)
هر موقع که کلید اینتر را میزنیم فقط یک کد make code از کیبرد خارج می شود و زمانی که بخواهیم تبدیلش کنیم باید به دو کد اسکی دستوری که شامل پرش به ابتدای خط و پرش به خط بعدی میباشد ، تبدیل شود ...
در هر صورت زمانی که کیبرد را به میکروکنترلر وصلش میکنیم نیازی به تعریف دو کد اسکی نیست زیرا این کاری که گفتم فقط در کامپیوتر کاربرد دارد و شما میتوانید در برنامه ای که مینویسید تنها آن کاری که میخواهید انجام دهید را بکنید ...
=============================
در کل
اون جدول به خاطر اینه که کدها رو تبدیل کنی به کد اسکی ...
=============================
در مورد اون عکس هم خداییش هیچی نفهمیدم ...
چون قبلش و بعدش نیست که متوجه منظورشون بشم ...
عکس کامل باشه بهتره ...
امیدوارم که خوب توضیح داده باشم ...
سوالی بود در خدمتم
موفق باشید
================================================ اضافه شده
http://www.computer-engineering.org/ps2keyboard/scancodes2.html
این لینک هم خیلی خوبه
نگاش کنید
نوشته اصلی توسط masoud58
منظورم این بود که بعضی کلید ها دستوری هستند و تشکیل شده از دو کد اسکی هستند ...
در مجموع من یه توضیح مختصری میدم تا رفع ابهام بشه
هر کلیدی که فشار میدهیم make code ارسال میشود ... و زمانی که دستمان از روی کلید رها کنیم make code همراه با Break code ارسال میشود ...
در حقیقت کد break code برای تشخیص رها کردن به کار گرفته میشود ... بنابراین کدی که برای ما خیلی مهمه Make code است.
هر کلیدی برای خودش یک make code دارد که این کد تا قبل از تبدیل به کد اسکی برای ما هیچ کاربردی ندارد ...
بنابراین باید کدهای Make code را با جدول لوکپ تبدیل به کد اسکی گردد ...
حالا
اینکه شما میگید چرا خونه 91 هست به خاطر اینه که کد make code کلید اینتر 5A است که اگر تبدیلش کنیم به مبنای ده میشه 90 . شمارش دیجیتال از صفر شروع میشه پس صفر تا 90 میشه 91 ...
بنابراین در جدول لوکپ باید خانه 91 را بگذاریم اون کدی که مربوط به کد اسکی هست ...
که البته باز هم میگم کلید اینتر کد اسکی نداره و تشکیل شده از دو کد اسکی دستوری آن کار اینتر را انجام میدهد ...
کدهای اسکی سه نوع هستند :
1- ASCII control characters (کارکترهای اسکی کنترلی یا دستوری)
2- ASCII printable characters (کارکترهای اسکی چاپی)
3- Extended ASCII characters (کارکترهای اسکی گسترش یافته)
هر موقع که کلید اینتر را میزنیم فقط یک کد make code از کیبرد خارج می شود و زمانی که بخواهیم تبدیلش کنیم باید به دو کد اسکی دستوری که شامل پرش به ابتدای خط و پرش به خط بعدی میباشد ، تبدیل شود ...
در هر صورت زمانی که کیبرد را به میکروکنترلر وصلش میکنیم نیازی به تعریف دو کد اسکی نیست زیرا این کاری که گفتم فقط در کامپیوتر کاربرد دارد و شما میتوانید در برنامه ای که مینویسید تنها آن کاری که میخواهید انجام دهید را بکنید ...
=============================
در کل
اون جدول به خاطر اینه که کدها رو تبدیل کنی به کد اسکی ...
=============================
در مورد اون عکس هم خداییش هیچی نفهمیدم ...
چون قبلش و بعدش نیست که متوجه منظورشون بشم ...
عکس کامل باشه بهتره ...
امیدوارم که خوب توضیح داده باشم ...
سوالی بود در خدمتم
موفق باشید
================================================ اضافه شده
http://www.computer-engineering.org/ps2keyboard/scancodes2.html
این لینک هم خیلی خوبه
نگاش کنید
دیدگاه