Конфигурирование LPT-портов
1.3.2. Конфигурирование LPT-портов
Управление параллельным портом разделяется на два этапа - предварительное конфшурирование (Setup) аппаратных средств
порта и текущее (оперативное) переключение режимов рабо- ты прикладным или системным ПО. Оперативное переклю- чение возможно только в пределах режимов, разрешенных при конфигурировании. Этим обеспечивается возможность согла- сования аппаратуры с ПО и блокирования ложных переклю- чении, вызванных некорректными действиями программы.
Конфигурирование LPT-порта зависит от его исполнения. Порт, расположенный на плате расширения (мультикарте), устанавливаемой в слот ISA или ISA+VLB, конфигурирует- ся джамперами на самой плате. Порт на системной плате конфигурируется через BIOS Setup.
Конфигурированию подлежат следующие параметры:
Базовый адрес - 3BCh, 378h или 278h. При инициализации BIOS проверяет наличие портов по адресам именно в этом порядке и, соответственно, присваивает обнаруженным портам логические имена LPT1, LPT2, LPT3. Адрес 3BCh имеет адаптер порта, расположенный на плате MDA или HGC. Большинство портов по умолчанию конфигуриру- ются на адрес 378h и могут переключаться на 278h.
Используемая линия запроса прерывания: для LPT - IRQ7, для LPT2 - IRQ5. Традиционно прерывания от принтера не используются, и этот дефицитный ресурс можно сэкономить. Однако при использовании скоростных ре- жимов ЕСР (или Fast Centronics) работа через прерыва- ния может заметно повысить производительность и сни- зить загрузку процессора.
т Использование канала DMA для режимов ЕСР и Fast Centronics - разрешение и номер канала DMA (по умол- чанию - 3).
Режимы работы порта:
и SPP - порт работает только в стандартном однонаправ- ленном программно-управляемом режиме.
is PS/2, он же Bi-Directional - отличается от SPP возмож- ностью реверса канала (установкой СЯ.5=7).
Fast Centronics - аппаратное формирование протокола Cen- tronics с использованием FIFO-буфера и, возможно, DMA.
т ЕРР - в зависимости от использования регистров порт работает в режиме SPP или ЕРР.
ж ЕСР - по умолчанию включается в режим SPP или PS/2, записью в ECR может переводиться в любой режим ЕСР, но перевод в ЕРР записью в ECR кода 100 не гарантиру- ется.
ЕСР+ЕРР - то же, что и ЕСР, но запись в ECR кода режи- ма 100 переводит порт в ЕРР.
Выбор режима ЕРР, ЕСР или Fast Centronics сам по себе не приводит к повышению быстродействия обмена с подклю- ченными ПУ, а только дает возможность драйверу и ПУ установить оптимальный режим в пределах их "разумения". Большинство современных драйверов и приложений пыта- ются использовать эффективные режимы, так что "подре- зать им крылья" установкой простых режимов без веских оснований не стоит.
Принтеры и сканеры могут пожелать режима ЕСР. Windows (3-х, 95 и NT) имеет системные драйверы для этого режима. В среде DOS печать через ЕСР поддерживается только спе- циальным загружаемым драйвером.
Сетевые адаптеры, внешние диски и CD-ROM, подключае- мые к параллельному порту, могут использовать режим ЕРР. Для этого режима специальный драйвер пока еще не приме- няется; использование ЕРР включается в драйвер самого под- ключаемого устройства.
Большинство современных ПУ, подключаемых к LPT-пор- ту, поддерживает стандарт 1284 и РпР. Для поддержки этих функций компьютером с аппаратной точки зрения достаточ- но иметь контроллер интерфейса, поддерживающий стан- дарт 1284. Если подключаемое устройство поддерживает РпР, оно по протоколу согласования режимов 1284 способно "до- говориться" с портом о возможных режимах обмена. Под- ключенное устройство должно сообщить операционной сис- теме (ОС) все необходимые сведения о себе - идентификатор производителя, модель и набор поддерживаемых команд. Более подробная информация может содержать идентифи- катор класса, подробное описание и идентификатор устрой-
ства, с которым обеспечивается совместимость. В соответ- ствии с принятой информацией ОС может предпринять дей- ствия по установке требуемого ПО для поддержки данного устройства.