جستجو در تک بوک با گوگل!

بازدید
The PS/2 (AT) Keyboard Interface
The Ps/2 Mouse Interface
شما را به دیدن این سایتها برای اطلاعات بیشتر درباره این موضوع تشویق میکنم . موضوعات مورد نظر پروژه ها ، کد ارتباطات مرتبط با موس و صفحه کلید می باشد .
لطفا ً در صورت یافتن اشکال در سایت Email بفرستید .
فیزیک مدارات واسط :
فیزیک پورت PS/2 به یکی از دو شکل ۵-Pin DIN یا ۶-pin mini DIN میباشد . هر دو اتصال (از لحاظ الکتریکی) کاملا ً شبیه به هم هستند . تنها اختلاف عمل بین آنها درترتیب پینهاست . یعنی دو نوع اتصال به سادگی قابل تغییر با آداپتور می باشند . قیمتآنها هر کدام حدود ۶ دلار است و یا اینکه شما میتوانید خودتان سوزنها را روی هر دواتصال کننده نصب نمائید. DIN استاندارد توسط سازمان استاندارد آلمان تولید شدهاست .
وب سایت آنها www.din.de است (این سایت در آلمان است ولی بیشتر صفحاتآن در انگلستان قابل دسترسی است).
صفحه کلیدهای PC یا از ۵-Pin DIN یا ۶-pin mini DIN استفاده میکنند . اگر صفحه کلید شما ۶-pin mini DIN است و کامپیوتر شما ۵-Pin DIN دارد یا برعکس، مثل مورد فوق که ذکر شد میتوانید عمل نمائید. صفحهکلیدهایی با ۶-pin mini DIN اغلب تحت عنوان صفحه کلیدهای PS/2 نام بردهمیشوند، در حالیکه صفحه کلیدهای با ۵-Pin DIN “AT” نامیده میشوند ( صفحهکلیدهای “XT” نیز از۵-Pin DIN استفاده میکند ولی آنها کاملاً قدیمی هستند و طیچند سال اخیر استفاده نشدهاند . ) همه صفحه کلیدهای جدید PC که ساخته میشوند یا PS/2 هستند و یا AT و یا USB . این مقاله کاری به USB ندارد چون که از قطعات کاملاًمختلفی تشکیل شده است .
موس به شکلهای مختلفی وجود دارد، همینطور بهاندازههای متفاوتی. نوع معمولی و متداول آن معمولاً موس PS/2 است. چند سال قبلچند سری موس متداول بودند ولی صنعت کامپیوتر با USB و PS/2 آنها را تحت پوششقرار میدهد. این مقاله فقط راجع به موسهای PS/2 است. اگر بخواهید یکسری موس USB را برنامهریزی نمائید، ، اطلاعات فراوانی راجع به چگونگی در دسترس قرار گرفتنآن روی وب وجود دارد.
کابل اتصال صفحه کلید و موس به کامپیوتر معمولاً حدود ۶ فوت درازا دارد و شاملچهار تا ۶ سیم 26 AWG است توسط یک لایه نازکی از فویل پوشانده شده است. اگر بهکابل یا سیم بیشتری نیاز داشتید، میتوانید سیمهای دراز PS/2 را از بیشترفروشگاههای الکتریکی تهیه نمائید. شما نباید چند سیم را به همدیگر وصل نمائید. اگربه سیم صفحه کلید ۳۰ فوتی نیاز داشتید، یک سیم 30 فوتی بخرید. خیلی ساده 5 سیممثلاً ۶ فوتی را به همدیگر وصل نکنید. انجام چنین کاری به برقراری ناجور ارتباط بینصفحه کلید/موس و سیستم میانجامد.
همانطور که نوشتیم، نوع دیگری از اتصال کننده وجود دارد که ممکن است برای صفحه کلید از آن استفاده نمائید، در حالیکه اکثر سیمهای صفحه کلیدها، سفت ومحکم به صفحه کلید وصل شده است، سیمهایی هم وجود دارند که به صورت مداوم به صفحهکلید وصل نشود و جزء قطعات جداگانه محسوب شوند. این سیمها دارای اتصال کنندههای DIN در انتهای سیم هستند، همچنین داراییک اتصال کننده SDL روی انتهای صفحه کلید است. SDL توسط کمپانی “AMP” تولیدشده است. این اتصال کننده مشابه به اتصال کننده تلفن است. و دارای سیمها و منافذ سوزنی و یک گلیپس یا گیره پلاستیکی که آن را در مکان قرار میدهد میباشد. اگر راجع به ایناتصال کننده نیاز به اطلاعات بیشتری دارید، باید بتوانید آن را روی وب سایت AMP در www.connect.amp پیدا کنید. من فقط این نوع را در صفحه کلیدهای XT دیدهام، گرچهکه ممکن است در صفحه کلیدهای AT هم وجود داشته باشد که از SDL استفادهمیکنند. اتصال کننده SDL را با USB اشتباهی نگیرید، هر دوی آنها شبیه به همهستند، همانطور که در نمودار زیر نشان دادم. ولی آنها در حقیقتا ً با هم متفاوت هستند.نوع SDL را به ذهن بسپارید که دارای منافذ و قطعات متحرک است در حالیکه نوع USB اینطور نیست.
سوزنهای هر اتصال کننده در زیر نشان داده شده است :
Male
(Plug) Female
(Socket) 5-pin DIN (AT/XT):
۱ – Clock
۲ – Data
۳ – Not Implemented
۴ – Ground
۵ – Vcc (+5V)
Male
(Plug) Female
(Socket) 6-pin Mini-DIN (PS/2):
۱ – Data
۲ – Not Implemented
۳ – Ground
۴ – Vcc (+5V)
۵ – Clock
۶ – Not Implemented
6-pin SDL:
A – Not Implemented
B – Data
C – Ground
D – Clock
E – Vcc (+5V)
F – Not Implemented
مدارات واسط الکتریکی :
توجه: پیرامون این مقاله، از عبارت معمولی سیستم برای اشاره به کامپیوتر استفادهمیکنم. یا مثلاً اگر به جای صفحه کلید و موس از لفظ وسیله استفاده میکنم به آنها اشاره دارد .
Vcc/Ground به موس و صفحه کلید توان موردنظر را میدهد. صفحه کلید یاموس نباید بیشتر از mA100 از سیستم جریان بکشد و دقت کنید که از مواردنظیر surges اجتناب شود. چنین surges ها میتوانند باعث داغ شدن موس ، صفحه کلید و سیستم شوند.
مادربوردهای قدیمی تر یک صفحه نصب شده دارند که از منافذ موس و صفحه کلید محافظت میکند. بیشتر مادربوردهای جدید از poly fuses استفادهمیکنند. به هر حال، این یک حالت استاندارد محسوب نمیشود و هنوز مادربوردهایقدیمی فراوانی برای استفاده وجود دارند. بنابراین ، من روی داغ کردن موس یا صفحه کلید تاکید می کنم .
بطور خلاصه : توانهای بخصوص
Vcc = +5V
Max Current = 100 mA
خطوط Data و خطوط Clock هر دو با مقاومت pullup به +۵V متصلند . یک مدار باز دارای دو وضعیت ممکن است: مقاومت کم یا بالا. در حالتمقاومت کم، یک ترانزیستور سطح منطقی را Low می کند . در وضعیت با مقاومت بالا مدار واسط بصورت مدار باز عمل کرده و و خطوط به سطح منطقی Low و High نمی روند . علاوه بر آن، یک مقاومت بین bus و Vcc وصلمیشود که چندان حائز اهمیت نیست (1 ~ 10 kOhms) ; مقاومتهای بیشتر در مصرف کمتر ومقاومت کمتر در افزایش سرعت . یک مدار واسط مدار باز در زیر نشان داده شده است :
شکل ۱ interface کلی مدار باز . data و clock در میکروکنترولر به ترتیب با پینهای A و B خوانده می شود . هر دو خط در حالت عادی +۵V می باشند ، ولی می توان با منطق “۱” در C و D آنها را به حالت “۰” تبدیل کند . نتیجه اینکه data مساوی عکس D و clock مساوی عکس C می باشد .
توجه : زمانی که به مثالهای موجود در این سایت نگاه می کنید ، توجه خواهید داشت که از حیله ها یی در زمان انجام interface مدار باز میکروی PIC استفاده کرده ام . از هر PIC به عنوان هم ورودی و هم خروجی استفاده کردم و مقاومتهای pull up داخلی PIC را که بیش از مقاومتهای خارجی استفاده می شود فعال کردم . یک خط با قرار دادن پین مطابق خروجی و نوشتن یک صفر در پورت آن صفر می شود . در وضعیتی که پین ورودی قرار داده شود مقاومت بالا می شود .
برای ساخت PIC با وسیله های محافظ و استهلاک رخ داده کم ، فکر می کنم این یک شکل صحیح ار آن باشد . اگر تجربۀ شما راه دیگری نشان می دهد بیان کنید .
ارتباطات : توصیف کلی
موس و صفحه کلید پروکل مشابه دارند . در حالتی که هر دو خط high ( مدار باز ) باشند bus “idle” است . این تنها حالتی است که موس یا صفحه کلید اجازۀ انتقال داده را دارند . سیستم روی bus کنترول تام دارد و می تواند در هر زمان با low کردن خط clock ارتباط را قطع کند .
وسیله همیشه سیگنال clock تولید می کند . اگر سیستم بخواهد داده ارسال کند ابتدا باید از ارتباط با وسیله به low کردن clock جلوکیری کند . سپس سیستم data را low کرده و clock را رها می کند ، این حالت “تقاضا برای ارسال” است و وسیله شروع به تولید سیگنال
ساعت می کند .
خلاصۀ : حالات bus
Data = high ، Clock = high حالت idle اجازۀ انتقال اطلاعات
Data = high ، Clock = low جلوکیری از ارتباط
Data = low ، Clock = high تقاضای سیستم برای ارسال اطلاعات
در هر لحظه تمام داده انتقال یافته در یک بایت و هر بایت به شکل ۱۱ – 12 بیت ارسال
میشود .
این بیتها شامل :
• 1 بیت شروع . همیشه ۰ است .
• 8 بیت داده ، بیت اول بیت کم ارزش .
• 1 بیت parity ( parity فرد )
• 1 بیت توقف ، همیشه ۱ است .
• 1 بیت acknowledge ( فقط ارتباط سیستم به وسیله )
بیت parity اگر تعداد ۱ های بیتهای داده ، زوج باشد ۱ و اگر فرد باشد ۰ است . تعداد ۱ های موجود در بیت های داده بعلاوۀ بیت parity همیشه یک عدد فرد می شود . این طریقۀ آشکار شدن خطاست . موس و صفحه کلید باید این بیت را چک کرده و اگر نادرست بود پاسخ دهد ، همچنین اگر فرمان نادرستی دریافت کرد . داده ای که از وسیله به سیستم ارسال می شود با لبۀ پایین رونده از clock خوانده می شود .
داده ای که از سیستم به وسیله ارسال می شود با لبۀ بالا رونده از clock خوانده می شود . فرکانس clock باید بین ۱۰ – 16.7 kHz باشد این بدان معناست که باید بیش از ۳۰ میکروثانیه و کمتر از ۵۰ میکرو ثانیه باشد . اگر شما یک صفحه کلید یا موس یا سیستم Emulator طراحی کردید یابد در وسط خط یشفش از هر مبدا اصلاح نمونه کنید . یعنی ۱۵ – 25 میکرو ثانیه بعد از انتقال clock . دربارۀ موس/ صفحه کلید همواره سیگنال ساعت تولید می کند ولی سیستم همیشه نهایت کنترل را بر روی ارتباط دارد .
ارتباط وسیله به سیستم
خطوط data و clock هر دو مدار باز هستند ، یک مقاومت بین هر خط و +۵V ارتباط بر قرار کرده ، بنابر این حالت idle از bus بصورت high می با شد . زمانی که صفحه کلید یا موس بخواهد اطلاعات ارسال کند ، اول خط clock را چک می کند که مطمئن شود در منطق high است . اگر نبود ، سیستم از ارتباط جلوگیری کرده و وسیله باید داده های ارسالی را بافر کند تازمانی که سیستم clock رارها کند . خط clock باید برای حداقل ۵۰ میکرو ثانیه high باشد بعدا ً وسیله می تواند انتقال داده را انجام دهد .
همانطور که در بخش قبلی ذکر شد ، صفه کلید وموس بایک پروتکل به شکل ۱۱ بیتی استفاده می کند .
این بیتها شامل :
• 1 بیت شروع . همیشه ۰ است .
• 8 بیت داده ، بیت اول دارای کمترین ارزش بیتی .
• 1 بیت parity (parity فرد)
• 1 بیت خاتمه . همیشه ۱ است .
صفحه کلید/ موس زمانی که clock در high باشد یک بیت برخط data می نویسند و زمانی که clock در low باشد سیستم ان را می خواند. در شکلهای 2 و۳ شرح داده شده است .
شکل ۲ : ارتباط وسیله با سیستم . زمانی که clock درhigh باشد حالت خط data عوض میشود و زمانی که clock در low باشد داده معتبراست .
شکل ۳ : کد اسکن شده کلید “Q” ( 15h ) از یک صفحه کلید به کامپیوتر ارسال می شود . کانال A سیگنال clock بوده ، کانال B سیگنال data است .
فرکانس clock از ۱۰ تا ۱۶٫۷kHz است . زمانی که یک پالس ساعت در لبۀ بالا رونده برای انتقال داده باید حداقل ۵ میکروثانیه باشد . زمانی که داده در یک لبۀ پایین روندۀ پالس ساعت انتقال می یابد باید حداقل ۵ میکروثانیه و نباید بیش از ۲۵ میکروثانیه باشد . سیستم می تواند در هر زمان با low کردن خط clock برای حد اقل ۱۰۰ میکرو ثانیه جلوی ارتباط را بگیرد . اگر از یک انتقال قبل از پالس یازدهم clock جلوگیری شود ، وسیلۀ انتقال رخ داده را ناقص انجام داده و باید زمانی که سیستم clock را رها می کند آماده انتقال دوباره وقوع “chunk” از داده شود . یک “chunk” از داده می تواند شامل یک make coke ، break code ، device ID ، بستۀ تغییرمکان موس و … باشد . به عنوان مثال اگر یک صفحه کلید مادامی که بایت دوم از یک break code دو بایتی را ارسال می کند متوقف شده باشد ، نیاز به انتقال مجدد هر دو بایت break code خواهد داشت ، نه فقط بایتی که در آن متوقف شده است .
اگر سیستم قبل از انتقال اولین لبۀ پایین رونده clock یا بعد از آخرین لبۀ پایین رونده clock را low کند ، صفحه کلید/موس نیازی به ارسال دوبارۀ داده ندارد . به هر حال اگربوجود آمد نیاز به انتقال دارد ، بافر خواهد شد تا زمانی که سیستم clock را رها کند . صفحه کلید یک بافر ۱۶ بایتی برای این منظور دارد . اگر بیش از ۱۶ بایت کلید فشار داده شود تا زمانی که آنها در بافر باشند از کلید جدید صرفنظر خواهد شد . موسها فقط باید بستۀ حرکتی رخ داده را ذخیره کنند .
ارتباط سیستم به وسیله :
بستۀ ارسالی یک تفاوت کوچکی با ارتباط در سیستم به وسیله دارد . ابتدای همه وسایل PS/2 همیشه تولید کنندۀ سیگنال ساعت هستند . اگر سیستم بخواهد داده ای ارسال کند ابتدا باید بصورت زیر clock و data را به حالت “تقاضای ارسال” ببرد :
• جلوگیری از برقراری ارتباط با low کردن clock در حداقل ۱۰۰ میکروثانیه .
• در خواست حالت “تقاضای ارسال” با low کردن data ، سپس رها کردن clock .
وسیله باید چک کند وقفۀ این وضعیت بیش از ۱۰ میلی ثانیه نشود . زمانی که وسیله این وضعیت را نشان داد ، شروع به ساخت سیگنال ساعت خواهد کرد و clock برای ۸ بیت داده و یک بیت توقف میباشد . سیستم خط data را فقط وقتی که خط clock در low باشد عوض می کند . ( مقادیر موجود روی خط data را عوض می کند ) و زمانی که خط clock در high باشد داده از طریق وسیله خوانده می شود . این عکس چیزی است که در ارتباط وسیله به سیستم رخ می دهد . بعد از دریافت بیت توقف ، وسیله با low کردن خط data و تولید یک پالس ساعت درآخر، به بایت ارسال شده acknowledge خواهد داد . اگر سیستم خط data را بعد از یازدهمین پالس ساعت رها نکند ، وسیله به تولید پالس ساعت ادامه خواهد داد تا زمانی خط data رها شود .(سپس وسیله یک خطا تولید خواهد کرد ) سیستم ممکن است قبل از یازدهمین پالس ساعت انتقال ناقص انجام داده باشد ( در زمان بیت acknowledge ) با low کردن clock برای حداقل ۱۰۰ میکروثانیه . برای تبدیل این پروسه به شکلی ساده و قابل فهم ، سیستم باید مراحل زیر را برای ارسال داده به وسیلۀ PS/2 دنبال کند :
۱ – خط clock را برای حداقل ۱۰۰ میکروثانیه در low نگه دارد .
۲ – خط data را در low بیاورد .
۳ – خط clock را رها کند .
۴ – منتظر وسیله بماند تا خط clock را low کند .
۵ – یک و صفر کردن خط data برای ارسال اولین بیت داده .
۶ – منتظر وسیله بماند تا خط clock را high کند .
۷ – منتظر وسیله بماند تا خط clock را low کند .
۸ – گامهای ۵ تا ۷ را برای ۷ بیت دیگر و بیت parity تکرار کند .
۹ – خط data را رها کند .
۱۰ – منتظر وسیله بماند تا خط data را low کند . ( برای ack ) .
۱۱ – منتظر وسیله بماند تا خط clock را low کند .
۱۲ – منتظر وسیله بماند تا خط clock وdata را آزاد کند .
شکل ۳ این را بصورت گرافیکی نمایش می دهد و شکل ۴ زمانبندی ها را بصورت جداگانه نمایش می دهد که کدام سیگنال با سیستم تولید می شود و کدام با وسیلۀ PS/2 .
آگاهی دادن از تغییر زمانبندی بیت “ack” رخداد انتقال داده ، زمان که خط clock در high باشد ( بیش از زمانی که low بوده برای ۱۱ بیت دیگر )
شکل ۳ : ارتباط سیستم به وسیله
شکل ۴ : جزئیات ارتباط سیستم به وسیله
شکل ۴ اشاره دارد به دو مقدار زمانی که سیستم آنها را نظاره می کند .
( a ) مدت زمانی که بعد از قرار دادن خط clock در low توسط سیستم وسیله شروع به تولید پالس ساعت می کند . که نباید بیش از ۱۵ms باشد .
( b ) زمانی که برای ارسال بسته گرفته می شود نباید بیش از ۲ms باشد .
اگر هر کدام از این حدود زمانی انجام نشود سیستم باید یک خطا تولید کند .
فورا ً پس از دریافت “ack” سیستم باید clock را به low آورده در مدت انجام پروسۀ data از ارتباط جلوگیری شود . اگر دستور ارسال شده به سیستم درخواست یک پاسخ کند ، دریافت پاسخ آن بعد از اینکه سیستم خط clock را رها کرد نباید بیش از ۲۰ms طول بکشد . اگر این امر اتفاق نیفتد ، سیستم یک خطا تولید می کند .
آموزش های عمومی برای ورود به بازار کار ۱٫۳۳/۵ (۲۶٫۶۷%) ۳ امتیازs موضوع : آموزش های عمومی برای ورود به بازار کار کسب مهارت برای ورود به بازار کار امروز در تک بوک میخواهیم سایتی رو به شما معرفی کنیم که میتونید توش […]
ترفندهای جدید در پاورپوینت ۳٫۰۰/۵ (۶۰٫۰۰%) ۱ امتیاز PowerPoint ابزاری ساده و پرکاربرد برای ارائه کنفرانس، سخنرانی و تحقیقات است و با امکاناتی که روز به روز به آن افزوده میشود، کار با این ابزار ساده تر از گذشته شده است.
۱۱ روش آوردن کنترل پنل در ویندوز ۱۰ ۳٫۰۰/۵ (۶۰٫۰۰%) ۱ امتیاز تمام قسمت های ویندوز ۱۰ بهینه شده است از ابزارها گرفته تا قسمت هایی که مربوط به تنظیمات این سیستم عامل می باشد.
۱۱ امتیاز برای مهاجرت به ویندوز ۱۰/ با عرضه ویندوز ۱۰ بررسی امکانات و ویژگیهای آن آغاز شده است. اگر چه این ویندوز به علت برخی قابلیت هایش از توانمندی بیشتری برای جمع آوری اطلاعات شخصی کاربران برخوردار است، اما مزایای زیادی هم دارد.
اندازه مناسب و قابل حمل بودن سیستمعاملهای مختلف، حافظه فلش مموری را به دستگاهی بسیار پرکاربرد برای انتقال اطلاعات تبدیل میکند.
همزمان با افزایش بدافزارها، کرمهای اینترنتی و تروجانها، هکرها و سارقان اطلاعات همواره به دنبال راههایی به منظور سرقت اطلاعات و دسترسی به حسابهای بانکی و گاهی بوجود آوردن اختلالات الکترونیکی بوده اند.
به نکات زیر توجه کنید