لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 23
ثبات کنترل پورت موازی
ثبات کنترل پورت موازی یک ثبات خروجی است. خواندن این مکان آخرین مقدار نوشته شده به ثبات کنترل، بجزء برای بیت 5 که فقط نوشتنی است، را بر می گرداند. بیت 5 یا بیت مسیر داده، تنها در PS/2 و دیگر سیستم هایی که از پورت موازی دو طرفه پشتیبانی می کنند وجود دارد. اگر شما در این بیت صفر بنویسید، خطوط داده و strobe به عنوان بیت های ورودی هستند، دقیقاً مثل پورت موازی یکطرفه، اگر شما در این بیت 1 بنویسید، خطوط داده و strobe به عنوان ورودی ها هستند. توجه کنید که در حالت ورودی (bit5=1) بیت صفر ثبات کنترل دقیقاً یک ورودی است. توجه: نوشتن 1 در بیت 4 ثبات کنترل، IRQ چاپگر را توانا می سازد. این ویژگی در همة سیستم ها کار نمی کند، بطوریکه فقط برنامه های اندکی از وقفه های پورت موازی استفاده میکنند. وقتی فعال باشد، پورت موازی یک وقفه OFH را تولید خواهد کرد هرگاه چاپگر انتقال داده را تصدیق می کند.
زمانیکه کامپیوترهای شخصی در حدود 3 پورت موازی جداگانه را پشتیبانی می کردند، می توانست بیشتر از 3 مجموعه از ثبات های پورت موازی در سیستم در هر لحظه وجود داشته باشد. آدرس های پایه پورت موازی به 3 پورت موازی تحصیص داده شدهاند: 3Bch و 378h و 278h. ما به اینها به عنوان آدرس های پایه برای: LPT1، LPT2 و LPT3 به ترتیب رجوع می کنیم. ثبات داده پورت موازی همیشه واقع شده در آدرس پایه برای یک پورت موازی، ثبات وضعیت در آدرس پایه 1+ قرار گرفته و ثبات کنترل در آدرس پایه 2+ قرار گرفته است. برای مثال برای LPT1 ثبات داده در آدرس 3Bch:I/O و ثبات وضعیت در آدرس 3BDH:I/O و ثبات کنترل در آدرس 3BEH:I/Q قرار دارد. مشکل کوچکی وجود دارد، آدرس های I\O برای LPT1:، LPT2: و LPT3: داده شده در بالا، آدرس های فیزیکی برای پورت های موازی هستند. بایوس آدرس های منطقی برای پورت های موازی فراهم می کند. این امر به استفاده کنندگان اجازه می دهد چاپگرهایشان را Remap کنند (زمانیکه بیشتر نرم افزارها فقط با LPT1: نوشته شده اند). برای انجام این امر، بایوس هشت بایت در فضای متغیر بایوس در نظر می گیرد () مکان 40:8 شامل آدرس پایه برای LPT1: منطقی است. مکان شامل آدرس پایه برای LPT2: است. وقتی نرم افزاری به LPT1: و LPT2: و غیره دستیابی پیدا می کند، آن بطور معمول به پورت موازی آدرس پایه ای که در یکی از این مکان ها رخ داده دسترسی پیدا میکند.
3-21- کنترل یک چاپگر از طریق پورت موازی
اگرچه دستگاههای زیادی وجود دارند که به پورت موازی PC شما وصل می شوند، چاپگرها تعداد گسترده ای از این اتصالات به شمار می آیند. بنابراین، شح اینکه چطور می شود و چاپگرها را به وسیله پورت موازی کنترل کرد احتمالاً بهترین مثال در حال حاضر است. با استفاده از صفحه کلید، نرم افزارهای شما در 3 سطح مختلف عمل میکنند:
آن می تواند داده ها را به وسیله داس یا بوسیله استفاده از بایوس یا مستقیماً بوسیله نوشتن روی سخت افزار پورت موازی چاپ کند. با استفاده از واسط صفحه کلید، استفاده از داس یا بایوس بهترین راه است، اگر شما می خواهید سازگاری را با وسایل دیگر که به پورت موازی وصل شده اند را حفظ کنید. البته، اگر شما در حال کنترل دستگاههای پورت موازی دیگر هستید، تماس با سخت افزار (به صورت مستقیم) تنها راه شماست. به هر حال، بایوس پشتیبانی خوبی از چاپگر بفرستید.
1-3-21-چاپ از طریق DOS
MS-Dos دو فراخوانی که شما می توانید برای فرستادن داده ها به چاپگر استفاده کنید را فراهم کرده است. تابع 05h داس، کاراکتر موجود در ثبات dl را به طور مستقیم به چاپگر می نویسد. این توابع در فصل داس و بایوس به صورت گسترده بحث شده اند، ما اینجا در این رابطه بیشتر بحث نخواهیم کرد. برای اطلاعات بیشتر نگاه کنید به «MS-Dos و PC-BIOS و File I\O» در صفحه 699.
2-3-21-چاپ تز طریق بایوس
اگرچه داس توابع پاسخگویی برای فرستادن کاراکتر به چاپگر فراهم کرده است، اما توابعی که به شما اجازه مقدار دهی چاپگر برای بدست آوردن وضعیت فعلی چاپ را بدهد، فراهم نکرده است. علاوه بر این داس فقط بر روی :LPT1 چاپ می کند. روتین nit 17h بایوس کامپیوترهای شخصی، سه تابع چاپ، مقدار دهی مجدد و وضعیت را فراهم کرده است شما می توانید این توابع را برای هر پورت موازی پشتیبانی شده در سیستم بکار ببرید. تابع چاپ همانند تابع کاراکتر داس است. تابع initialize، چاپگری را که از سیستم وابسته به اطلاعات زمان استفاده می کند، مقداردهی اولیه می کند. وضعیت چاپگر، اطلاعاتی را از وضعیت پورت چاپگر در مورد اطلاعاتی که زمانش به اتمام رسیده بر می گرداند. برای اطلاعات بیشتر در مورد این روتین ها به MS-Dos، PC-BIOS و File I/O نگاه کنید.
3-3-21-یک روتین سرویس وقفه int 17h
تحقیق درباره ثبات کنترل پورت موازی