LPT EEE 1284 (англ. Line Print Terminal) — международный стандарт параллельного интерфейса для подключения периферийных устройств персонального компьютера. Название LPT образовано от наименования стандартного устройства принтера LPT1 (Line Printer Terminal или Line PrinTer) в операционных системах семейства MS-DOS.
Стандарт IEEE 1284 определяет двунаправленный вариант порта, который позволяет одновременно передавать и принимать биты данных. В основе данного стандарта лежит интерфейс Centronics и его расширенные версии (ECP, EPP). Стандарт IEEE 1284 стал результатом длительной борьбы за обеспечение совместимости. Стандарт включает в себя формальное описание всех режимов работы LPT-порта. До принятия данного стандарта не было никакого формального документа, позволяющего при соблюдении его рассчитывать на корректную работу устройства во всех возможных конфигурациях.
В основном LPT-порт используется для подключения к компьютеру принтера, сканера и других внешних устройств. Также LPT-порт часто использовался для подключения внешних устройств хранения данных. Может применяться для организации связи между двумя компьютерами, подключения каких-либо устройств телесигнализации и/или телеуправления.
В настоящее время стандарт IEEE-1284 не развивается. Окончательная стандартизация параллельного порта совпала с началом внедрения интерфейса USB, который позволяет подключать также МФУ и обеспечивает более высокую скорость печати и надёжную работу принтера. Также альтернативой параллельному интерфейсу является сетевой интерфейс Ethernet.
История/History
Изначально, LPT-порт физически отсутствовал на материнской плате и реализовался дополнительной картой расширения, вставляемой в один из ISA-слотов расширения на материнской плате. Параллельный порт как правило использовался — для принтера или сканера, для которых передача большого объёма данных не была критичной по времени. В дальнейшем, поддержка параллельного порта была интегрирована в чипсеты, реализующие логику материнской платы.
Параллельный порт Centronics — порт, используемый с 1981 года в персональных компьютерах фирмы IBM для подключения печатающих устройств, разработан фирмой Centronics Data Computer Corporation. Изначально данный порт был разработан только для симплексной (однонаправленной) передачи данных, так как предполагалось, что порт Centronics должен использоваться только для работы с принтером. Впоследствии разными фирмами были разработаны дуплексные расширения интерфейса (Byte Mode, EPP, ECP). Затем был принят международный стандарт IEEE 1284, описывающий как базовый интерфейс Centronics, так и все его расширения.
Общие сведения
Стандарт IBM определяет 3 параллельных порта ввода/вывода, которые предусмотрены в BIOS PC и во всех версиях DOS. В адресном пространстве компьютера резервируются базовые адреса данных портов: 3BCh, 378h, 278h.
В IBM-совместимых компьютерах за параллельными портами закреплены специальные логические имена, поддерживаемые системой: LPT1, LPT2, LPT3. Данные логические имена не обязательно должны совпадать с указанными адресами портов ввода/вывода. При загрузке система анализирует наличие параллельных портов по каждому из трех базовых адресов. Поиск портов всегда выполняется в следующем порядке: 03BCh, 0378h, 0278h. Первому найденному параллельному порту присваивается логическое имя LPT1, второму - LPT2, третьему - LPT3. В результате реализации такой схемы назначения имен в системе всегда будет порт LPT1, независимо от присвоенного ему адреса порта ввода/вывода, при условии, что компьютер физически имеет данный параллельный порт.
Bios
Адреса портов, присвоенные каждому слоту LPTx, можно определить путём чтения области данных BIOS по адресу 0000:0408.
Onboard Parallel Port - Данная опция задает адрес ввода/вывода и номер прерывания для параллельного LPT-порта. Данная опция в зависимости от версии BIOS, задает либо адрес и прерывание, используемые параллельным (LPT) портом, либо только адрес (прерывание задается отдельной опцией, расположенной рядом).Пример страницы настроек Phoenix - Award Bios
Значения опции:
378H/IRQ7 – адрес 378H и прерывание IRQ7;
278H/IRQ5 – адрес 278H и прерывание IRQ5;
3BCH/IRQ7 – адрес 3BCH и прерывание IRQ7;
Auto – автоматическое определение адреса ввода/вывода и номер прерывания;
Disabled – отключает порт LPT.
Parallel Port Mode - Данная опция устанавливает режим работы параллельного LPT-порта.
Пример страницы настроек Phoenix - Award Bios
Значения опции:
Normal или SPP - простейший однонаправленный или стандартный (Standard Parallel Port);
Bi-Dir, Bi-Directional или BPP - двунаправленный (Bi-Directional);
EPP - усовершенствованный параллельный порт (Enhanced Parallel Port);
ECP - порт с расширенными возможностями (Enhanced Capabilities Port);
ECP+EPP - поддержка двух режимов — Enhanced Capabilities Port и Enhanced Parallel Port.
Оптимальным выбором является выбор значения «Enhanced Capabilities Port - ECP», что обеспечит максимальную скорость обмена данными между компьютером и периферийным устройством.
В случае если подключенное оборудование к данному параллельному порту ПК работает нестабильно, можно последовательно снизить используемый режим вплоть до стандартного. В некоторых случаях помогает установка двунаправленного (Bi-Directional) или комбинированного (Enhanced Parallel Port и Enhanced Capabilities Port) режимов.
ECP DMA Select - В случае если параллельный порт функционирует в режиме высокоскоростного порта с расширенными возможностями ECP (Enhanced Capabilities Port) или ECP+EPP (Enhanced Capabilities Port и Enhanced Parallel Port), ему необходимо выделить канал прямого доступа к памяти (DMA). Стандартным значением является канал с номером 3.
Свойства системы - Оборудование - Диспетчер устройств - Ports (Com & LPT) - LPT Port - Ресурсы
Примечание: В версиях Windows, которые не используют ядро Windows NT (типа DOS и некоторых других операционных систем), программы могут получить доступ к параллельному порту с помощью подпрограмм outportb() и inportb(). В операционных системах Windows NT и Unix (NetBSD, FreeBSD, Solaris, 386BSD) задействован встроенный в процессор 80386 механизм безопасности, и доступ к параллельному порту запрещён, если не указан нужный драйвер. Данное ограничение повышает безопасность и способствует разрешению конфликтов при доступе к устройству.
Режим работы порта
Стандарт позволяет использовать интерфейс в нескольких режимах:
- SPP (Standard Parallel Port) — однонаправленный порт, полностью совместим с интерфейсом Centronics.
- Nibble Mode — позволяет организовать двунаправленный обмен данными в режиме SPP путём использования управляющих линий (4 бит) для передачи данных от периферийного устройства к контроллеру. Исторически это был единственный способ использовать Centronics для двустороннего обмена данными.
- Byte Mode — редко используемый режим двустороннего обмена данными. Использовался в некоторых старых контроллерах до принятия стандарта IEEE 1284.
- EPP (Enhanced Parallel Port) — разработан компаниями Intel, Xircom и Zenith Data Systems — двунаправленный порт, со скоростью передачи данных до 2 МБайт/сек (1991г.)
- ЕСР (Extended Capabilities Port) — разработан компаниями Hewlett-Packard и Microsoft — в дополнение появились такие возможности, как наличие аппаратного сжатия данных, наличие буфера и возможность работы в режиме DMA.
Распиновка LPT Centronics (CN36)
Эмуляция LPT-порта (IEEE 1284) под OC Windows
#1: Использование PCI совместимой платы расширения для персонального компьютера.
Пример платы расширения PCIe с LPT-портом EPP
PCI (англ. Peripheral Component Interconnect) — шина ввода/вывода для подключения периферийных устройств к материнской плате компьютера.
Свойства системы - Оборудование - Диспетчер устройств - Ports (Com & LPT) - PCI LPT Port - Ресурсы
Примечание: Чаще всего при установке PCI Card LPT адреса ввода/вывода будут отличны от стандартных/базовых, вследствие чего практически все программаторы и LPT-ключи не будут работать или будут работать некорректно.
Реальный адрес ввода-вывода зависит от операционной системы и будет выбран случайно. Адрес ввода-вывода не будет изменен, в случае если не будет осуществлена перестановка PCI карты в другой PCI слот.
В продаже имеются 1- и 2-портовые PCI платы IEEE1284.
В техническом описании к PCI платам расширения с интерфейсом LPT указывается возможность использования стандартного адресного пространства для I/O (ввода/вывода), однако возможность задания ресурсов ввода-вывода определяется типом используемой операционной системы.
В операционных системах MS Windows 95/98/ME, DOS возможна установка параметров, соответствующих стандартным LPT-портам ISA. В более современных операционных системах (например, Windows 2000/XP/Vista) распределение ресурсов ввода-вывода происходит без участия пользователя или администратора. В некоторых случаях это может приводить к невозможности работы контроллера в некоторых режимах, и во многом зависит от конфигурации оборудования и типа используемой операционной системы.
#2: Использование адаптера с USB интерфейсом.
Пример адаптера LPT-порта с USB интерфейсом
USB (англ. Universal Serial Bus) — последовательный интерфейс передачи данных для среднескоростных и низкоскоростных периферийных устройств в вычислительной технике.
Свойства системы - Оборудование - Диспетчер устройств - Universal Serial Bus - USB Printing Support
Примечание: Адаптер USB-LPT полностью не эмулирует LPT-порт в системе, а лишь создает канал для подключения принтера с интерфейсом подключения LPT через встроенный USB интерфейс системы. При подключении устройство определяется как «IEEE-1284 Controller» на панели "Устройства и принтеры" и как "Поддержка USB принтера" в разделе "Контроллеры USB" диспетчера устройств. В диалоговом окне "Свойства" (Properties) принтера - вкладка "Порты" (Ports) необходимо выбрать "Virtual Printer Port for USB".