ДОСЛІДЖЕННЯ МЕТОДІВ ПРОГРАМНОГО КЕРУВАННЯ ВИВОДОМ ДАНИХ НА ПРИНТЕР
З ВИКОРИСТАННЯМ ПАРАЛЕЛЬНОГО ІНТЕРФЕЙСА
Мета роботи:
· усвідомити правила та процедури формування послідовності символів для передачі їх на принтер;
· навчитись ідентифікувати стан принтера за байтом статусу;
· навчитись розробляти програмні модулі керування передачею кодів символів у буфер принтера.
ТЕОРЕТИЧНІ ВІДОМОСТІ
Призначення та характеристики інтерфейса Centronics
Одним із стандартних компонентів ПЕОМ є паралельний порт. Він являє
собою канал для виводу даних на друкуючий пристрій (принтер), графопобудов- ник (плотер) або інший зовнішній пристрій з відповідним інтерфейсом. Згідно з ДЕСТ 27942 – 88 цей інтерфейс називають ІРПР – М, а в зарубіжній літературі – Centronics.
Інтерфейс Centronics забезпечує швидкість передачі даних до 150 кбайт за секунду. Зв’язок зовнішнього пристрою з комп’ютером через інтерфейс Centronics здійснюється спеціальним кабелем довжиною не більше трьох метрів.
|
|
Опис портів інтерфейса Centronics
Апаратні засоби PC AT підтримують до трьох паралельних портів Centronics,
які прийнято називати LPT1, LPT2, LPT3. Кожний з цих портів має по три програмно доступні регістри вводу/виводу.
Таблиця 1 – Порти інтерфейсів Centronics
LPT1 | LPT2 | LPT3 | Доступ | Виконувана функція |
3BCh | 378h | 278h | Запис | Запис байта, що передається у буфер даних інтерфейса Centronics |
3BCh | 378h | 278h | Читання | Діагностичне читання буфера даних |
3BDh | 379h | 279h | Читання | Читання регістра стану принтера |
3BEh | 37Ah | 27Ah | Запис | Запис сигналів у регістр керування принтером |
3BEh | 37Ah | 27Ah | Читання | Діагностичне читання регістра керування принтером |
Принтерні порти можуть формувати сигнали запитів на переривання: LPT1 –
IRQ7 викликає обробник INT 0Fh; LPT2 – IRQ5 викликає обробник INT 0Dh.
Порт 378h призначений для запису байта даних, що виводиться на принтер. Допускається читання тільки що записаного байта.
Порт 37Ah призначений для керування принтером, доступний для читання і запису.
Таблиця 2 – Формат порту керування 37Ah
Біт | Значення |
D0 | Строб даних: 1 – вивод байта 0 – немає виводу |
D1 | Перенесення рядка автоматично: 1 – так 0 – ні |
D2 | Скидання принтера: 1 – ні 0 – скинути |
D3 | Вибір принтера: 1 – вибрано 0 – ні |
D4 | Переривання від принтера: 1 – дозволено 0 – заборонено |
D7 – D5 |
Порт 379h призначений для індикації стану принтера та доступний тільки для читання.
Таблиця 3 – Формат порту стану 379h
|
|
Біт | Значення |
D2 – D0 | |
D3 | Сигнал помилки: 1 – немає помилки 0 – є помилка |
D4 | Вибір принтера: 1 – вибраний 0 – ні |
D5 | 1 – немає паперу 0 – є папір |
D6 | 1 – принтер не готовий до роботи 0 – принтер готовий до роботи |
D7 | 1 – принтер не зайнятий 0 – принтер зайнятий або відбулась помилка |