Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых

Аппаратное обеспечение персонального компьютера

© Александр Фролов, Григорий Фролов
Том 33, М.: Диалог-МИФИ, 1997, 304 стр.

[Назад] [Содеожание] [Дальше]

Программирование принтера

В этом разделе мы расскажем о некоторых приемах программирования принтеров.

Относительно недавно наибольшей популярностью пользовались матричные принтеры, в основном из-за их низкой стоимости. Сегодня матричные принтеры вытесняются струйными и лазерными, особенно если они используются с приложениями Windows.

Больше всего распространены две группы матричных принтеров, различающихся по системе используемых команд - это принтеры, совместимые с принтерами Epson и принтеры, совместимые с принтерами IBM Proprinter. Принтеры некоторых третьих фирм-производителей компьютерного оборудования обычно эмулируют команды обоих или одной из этих групп в зависимости от установленного режима работы.

Кроме того, вы должны учитывать, что различные модели принтеров, изготовленные одной и той же фирмой, отличаются набором команд. При этом, как правило, обеспечивается совместимость по командам снизу вверх, то есть более новые модели поддерживают команды предыдущих моделей принтеров.

Средим матричных принтеров в России очень распространены принтеры серии Epson FX: FX-80, FX-850, FX-1050. Печатающие головки этих принтеров имеют девять иголок, поэтому качество печати принтеров серии FX оставляет желать лучшего. Принтеры серии Epson LQ используют для печати 24 иголки, кроме того, некоторые модели способны печатать цветные изображения (например, Epson LQ-2550). Качество печати принтеров LQ намного лучше.

Подключение принтера к компьютеру

Принтер подключается к компьютеру двумя способами: либо через асинхронный последовательный адаптер, либо через параллельный адаптер. Вы можете подключить к одному компьютеру сразу нескольких принтеров, причем принтеры могут быть подключены одновременно и к параллельному, и к асинхронному последовательному адаптеру.

Для подключения к последовательному адаптеру принтер должен быть оборудован специальным последовательным интерфейсом. Кроме того, необходимо использовать специальный кабель. Если вы подсоедините принтер к последовательному порту при помощи кабеля, предназначенного для работы с параллельным портом, то это может привести к повреждениям в оборудовании компьютера или принтера. Внимательно читайте раздел документации на принтер, посвященный подключению к компьютеру.

Установка переключателей конфигурации

Как правило, матричные принтеры позволяют устанавливать режим своей работы с помощью переключателей режима. Для доступа к этим переключателям вам не надо разбирать принтер или снимать крышку корпуса - эти переключатели располагаются в легкодоступном месте.

Некоторые принтеры, например, струйные и лазерные, не имеют переключателей режимов. Для задания режимов используется клавиатура и небольшой дисплей на корпусе принтера. Режим такого принтера хранится в памяти CMOS, которая установлена в принтере и питается от аккумулятора. Поэтому установленный режим не сбрасывается при выключении питания принтера.

Программирование режимов работы принтера

Для изменения режимов работы принтера и выполнения загрузки шрифтов используются специальные командные последовательности символов. Командные последовательности посылаются в принтер как обычные символы. Для вывода этих последовательностей вы можете использовать описанные ранее функции MS-DOS или BIOS.

Признак начала командной последовательности символов - байт ESC с кодом 1Bh. Вслед за этим байтом программа посылает в принтер байты командной последовательности. Длина последовательности зависит от выполняемой команды.

Первый байт командной последовательности - код выполняемой команды. Далее следуют байты параметров команды. Некоторым командам не предшествует байт ESC (это, например, команды перевода строки, страницы или команды табуляции).

Подробное описание всех команд не входит в задачу данной книги. Вы можете найти список команд в документации на принтер. Мы опишем подробно лишь несколько команд принтера Epson FX-850/1050 с целью иллюстрации способов программирования режимов принтера с использованием протокола ESC/P.

Инициализация принтера

Код команды: ESC "@"

Для сброса принтера в исходное состояние программа должна послать на принтер два байта - байт ESC (1Bh) и байт, соответствующий ASCII-символу "@" (40h).

Генерация звукового сигнала

Код команды: 07h

Если послать этот байт, принтер издаст звуковой сигнал. Этот сигнал удобно использовать для привлечения внимания оператора, например, когда кончилась бумага.

Возврат каретки

Код команды: 0Dh

По этой команде распечатываются все символы из буфера принтера, затем печатающая головка возвращается к началу строки. В зависимости от состояния переключателя конфигурации может дополнительно выполняться прогон бумаги на одну строку.

Перевод строки

Код команды: 0Ah

Когда этот символ посылается на принтер, все символы, находящиеся во внутреннем буфере принтера, распечатываются, затем каретка возвращается к началу строки и происходит подача листа вперед на одну строку.

Перевод страницы

Код команды: 0Ch

Принтер распечатывает все символы, находившиеся в буфере, затем выполняет прогон одного листа бумаги.

Другие команды

Существуют различные команды, позволяющие определить размер межстрочного интервала, расположение левой и правой границ листа, используемый для печати шрифт. С помощью некоторых команд можно выполнять печать графических изображений.

Если вас не устраивает шрифт, который записан в ПЗУ принтера (например, в нем нет символов кириллицы), вы можете использовать команды для загрузки собственного шрифта.

[Назад] [Содеожание] [Дальше]