Особенности и принцип работы lpt порта принтера. Осваиваем LPT порт

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

LPT порт имеет 25 контактов на которых может быть установлено 0 или +5В (0 или 1). Устанавливать значения можно программным путем или с помощью внешнего устройства. Давайте рассмотрим следующий рисунок который поможет нам в работе.
(Сразу признаюсь, рисунок не мой, он взят с сайта www.pcports.ru , где есть много информации на данную тему).

Как мы видим, выводы порта можно разделить на четыре группы. Восемь крастных выводов относятся к регистру Data . Чтобы к нему обращаться, надо знать его адресс: 378h - в 16-ричной системе или 888 - в 10-ричной. Биты этого регистра могут быть установлены (или сброшены) как программно, так и внешним устройством.
Выводы обозначенные черным цветом являются земляными. Все они соединены между собой и для наших целей мы можем использовать любой.
Зеленым цветом обозначены контакты, устанавливать значение которых можно только через внешнее устройство. То есть программно мы их изменить не можем. Мы можем только считывать их состояние. Они относятся к регистру Status , который имеет адрес 379h в 16-ричной или 889 в 10-ричной системе.
И регистр Control , выводы которого обозначены синим цветом. Он как и регистр Status однонаправленный, но тут его состояние изменять можно только программно.
Ну что, надо бы и на практике закрепить. Давай вспомним старый, добрый Ассемблер. Для работы с портами он предоставляем нам две команды: in и out . Команда in загружает данные в аккумулятор из порта устройства ввода/выводы. Пример:

n аккумулятор, порт.

В этом случае можно выводить из портов с адресами до 255. Нам этого недостаточно. Используя регистровую адресацию можно выводить из портов до 65536. Вот пример:

in аккумулятор, dx .

То есть адрес порта должен быть заранее помещен в регистр dx. Команда out наоборот - помещает в порт данные из аккумулятора. Пример: out dx , аккумулятор. Здесь также используется регистровая адресация, что бы можно было работать с портами, адреса которых до 65536. Теперь запускаем наш любимый Делфи, ставим на форму кнопку и по событию ее нажатия пишем следующий ассемблерный код (это называется ассемблерная вставка (примечание Soffrick"а - Inline assembler ) и она записывается между ключевыми словами asm и end ):
(этот пример не будет работать в Windows NT. Потом расскажу как это побороть)

procedure TForm1. Button1Click (Sender: TObject ) ; asm //обозначает, что дальше пойдет ассемблерный код mov dx, 888 //засылаем в регистр dx адрес нашего порта в 10-чной системе mov al, 00000001b //в аккумулятор засылаем "маску" в двоичной сис. out dx, al //выводим в порт (а точнее в регистр Data знач. 00000001 end ;

Теперь обьясню чего мы добились. Давай посмотрим на наш рисунок, а точнее на красные разьемы которые соответствуют битам от D0 до D7 регистра Data. А теперь угадай какой из них мы установили в 1. Правильно, бит D0, а следовательно и контакт №2 установлен в 1. А это значит, что на этом контакте сейчас находится +5 Вольт. Проверяется легко. Нужно взять светодиод и его "+" засунуть во второй контакт, а его "-" в 25-й (тоесть заземлить). Вот тут я должен тебя предупредить, что подключение к LPT порту всяких самодельных устройств (сделанных не грамотно) может обернутся выходом из строя материнской платы. Обычно длинный усик светодиода - это "+" (лучше проверить это с помощью батарейки). Наш светодиод должен загореться. Но вот не задача. Наша программа при нажатии на кнопку ругается. Дай угадаю, у тебя винда не 9х.

Дело в том, что ОС Windows NT (2000, XP) с целью обеспечения безопасности использования совместных аппаратных ресурсов компьютера, запрещает к ним прямой доступ из программ пользовательского режима. И чтобы обратиться к порту, необходимо все операции проводить через драйвер. Я предлагаю использовать библиотеку Inpout32.dll. Скачать ее можно здесь http://www.pcports.ru/files/inpout32.rar . Эта библиотека, при работе с NT, обращения к ней конвертирует в запросы к стандартному драйверу ОС, через который и идет обмен данными с портом. Узнать больше об этой библиотеке и ее авторе можно здесь: http://www.logix4u.net/inpout32.htm . Эта библиотека содержит две следующие функции которые нам пригодятся. Вот их описание:

Inp32(PortAdr: word): byte.

Ей передается адрес порта, а она возвращает значение которое в нем установлено. Внимание, значение передает в десятичной системе. Следующая функция:

Out32(PortAdr: word; Data: byte): byte.

Из описания видно что она тоже может возвращать какой то результат, но нам это не понадобится. Она отсылает в указанный порт указанное значение (тоже в 10-чной сис.). Снова открываем наш отчаянно закрытый после первой попытки Делфи и делаем следующее. Нам необходимо объявить функции из библиотеки. Для этого в нашем исходнике после перечня модулей и перед объявлением типов пишем следующее:
...

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, jpeg; function Inp32(PortAdr: word ) : byte ; stdcall ; external "inpout32.dll" ; function Out32(PortAdr: word ; Data: byte ) : byte ; stdcall ; external "inpout32.dll" ; type TForm1 = class (TForm)

...
Здесь мы объявили две функции. Указали, что вызываться они будут стандартным способом (написав stdcall), а также мы указали, что процедура внешняя и находится в библиотеке (external "inpout32.dll").Кстати, эта библиотека должна находиться в папке вместе с исполняемым файлом. Далее кидаем на форму кнопку и по ее нажатию пишем:

Out32(888,1);

Компилируем, запускаем и о чудо, загорелся наш светодиод. А теперь давай вспомним "маску" (00000001) из предыдущего примера. Наша единица, которая передается во втором параметре в порт 888 (регистр Data) в 10-чной сис. равносильна 00000001 в 2-чной. То есть, если взять еще два светодиода, и "+" одного засунуть в 3-й контакт LPT порта, а "+" другого, например в пятый, а ихние минусы конечно заземлить подключив к 25-му выводу, то для того что бы их все зажечь, надо во втором параметре функции Out32 отправить на порт 11: Out32(888,11), потому что 11, в двоичной системе будет выглядеть так 00001011. Непонятно? Попробуй эти нолики и единички визуально наложить на рисунок, начиная с девятого контакта и до 2-го. Теперь не сложно догадаться, что на контактах 5,3 и 2 будет установлено напряжение +5В и наши светодиоды, которые мы туда засунули, будут гореть. Теперь мы можем сделать что-нибудь по интереснее, например мигалку. Используя таймер это не сложно сделать. Попробуй сам.

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

Written by: Kastor

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

Прежде всего, разберемся с названием порта. Возможно, далеко не все знают, что обозначает аббревиатура LPT. На самом деле, LPT – это сокращение от словосочетания Line Print Terminal (построчный принтерный терминал). Таким образом, становится понятным, что LPT-порт предназначался, прежде всего, для подключения принтеров. Именно поэтому порт LPT имеет и еще одно название – порт принтера. Хотя теоретически могут подключаться к LPT и другие устройства.

LPT-порт имеет давнюю историю. Он был разработан фирмой Centronics (поэтому данный порт часто называют также портом Centronics), производившей матричные принтеры еще до начала эпохи персоналок, в начале 1970-х. А в начале 1980-х LPT-порт стал использоваться фирмой IBM в своих компьютерах и на какое-то время стал стандартным портом для подключения высокоскоростных (на то время) устройств.

Внешний вид параллельного порта на задней панели компьютера

Интерфейс LPT существовал в нескольких редакциях. В оригинальной версии LPT-порт был однонаправленным, то есть мог передавать данные лишь в одном направлении – к периферийному устройству. Разумеется, такая ситуация не устраивала пользователей, поскольку существовали принтеры, которые требовали передачи данных в обоих направлениях. Поэтому впоследствии интерфейс LPT несколько раз был усовершенствован, пока не был разработан его международный стандарт IEEE 1284. В соответствии с этим стандартом интерфейс параллельного порта поддерживал несколько режимов работы и был также совместим со старыми стандартами. Кроме того, интерфейс в своей конечной редакции поддерживал относительно высокие скорости передачи данных – до 5 Мб/с.

Принцип работы параллельного порта

Порт LPT называется параллельным потому, что в подключаемом к нему кабеле данные передаются параллельно, то есть, одновременно по нескольким проводникам. Этим свойством параллельный порт отличается от другого порта компьютера –последовательного порта COM.

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

Хотя параллельный порт большей частью используется для подключения принтеров, тем не менее, существовали и другие его применения. Во-первых, при помощи порта LPT можно напрямую соединить два компьютера – посредством специального кабеля Interlink. До широкого распространения сетевых карт Ethernet подобное соединение, хоть и не обеспечивавшее пользователю большую скорость передачи данных, зачастую было, тем не менее, единственным способом связать два компьютера. Существуют также электронные ключи, предназначенные для подключения к порту LPT.

Кабель для передачи данных между компьютерами - Interlink

Как и в случае многих других устройств на материнской плате, режимы работы параллельного порта часто можно настроить через BIOS Setup. Как правило, для этого используются такие опции BIOS, как Parallel Port, Parallel Port IRQ, Parallel Port DMA и т.п.

Разъем параллельного порта на материнской плате и кабель Centronics

Разъем порта LPT обычно располагается непосредственно материнской плате, хотя до середины 1990-x гг. он обычно присутствовал на вставляемой в слот расширения так называемой мультикарте, на которой были также расположены другие порты компьютера. Выход порта представляет собой 25-контактный разъем типа «розетка», который называется разъемом DB25.

ISA мультикарта с LPT(DB25 - «мама») и игровым портом на борту.

Для подключения к принтеру используется специальный кабель ­­– кабель Centronics. Один конец (вилка) кабеля Centronics подключается к порту, другой (также вилка) – к специальному разъему принтера. Последний разъем имеет 36 контактов. Следовательно, особенностью кабеля Centronics является то, что он имеет разные разъемы с обеих сторон.

Внешний вид кабеля Centronics.

Хотя часто разъем кабеля для материнской платы называется разъемом Centronics, тем не менее, строго говоря, разъемом Centronics называется лишь 36-контактный разъем для подключения к принтеру, а не к материнской плате. Разъем кабеля для подключения к порту называется разъемом Amphenolstacker, от названия разработавшей его американской фирмы Amphenol, производящей разъемы.

Особенности работы параллельного порта

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

Максимальное напряжение, использующееся в сигнальных линиях порта, составляет +5 В. Для простой передачи данных требуется всего лишь десять сигнальных линий – это 8 линий собственно данных, линия строб-сигнала, то есть, сигнала о готовности порта к передаче данных, и линия занятости. Остальные линии используются для совместимости со стандартом Centronics.

LPT-порт типа «мама» с нумерацией контактов.

Назначение выводов разъема параллельного порта DB25:

  • 1 – Data strobe (Строб-сигнал)
  • 2-9 – Данные, биты 0-7
  • 10 – Acknowledge (Подтверждение от принтера)
  • 11 – Busy (Занят)
  • 12 – Paper Out (Кончилась бумага)
  • 13 – Select (Принтер активен)
  • 14 – Auto Feed (Автоматическая подача)
  • 15 – Error (Ошибка)
  • 16 – Init (Инициализация принтера)
  • 17 – Select Input (Выбор устройства)
  • 18-25 – Земля

Заключение

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

Порт «LPT» редко встречается на современных компьютерах. Это специальный разъем компьютера для подключения принтера. Некоторые компьютеры были снабжены несколькими портами «LPT». Эти порты нумеровались: «LPT1», «LPT2» и так далее.

Параллельные порты

Исторически так сложилось, что порты для подключения компьютера разделены на категории: серийные и параллельные порты. «LPT» относится к параллельным портам. Это значит, что информация перемещается по восьми различным проводам, то есть одновременно и параллельно. Компьютеры имеют дело с двоичной информацией. Двоичность преобразует информацию в массивы нулей и единиц. Одно двоичное число (ноль или единица) называется битом. Группа из восьми бит называется байтом. Восемь бит каждого байта, которые перемещаются из компьютера в параллельный порт, перемещаются одновременно. Другой тип кабеля, подключенный к серийному порту, перемещает восемь бит каждого байта друг за другом.

Значение

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

Подключение

Параллельный порт «LPT» и соответствующий разъем имеет 25 штифтов и называется «DB-25», либо «D-Type 25». В разъеме штифты оголены. Они вставляются в 25 отверстий параллельного порта. Восемь из 25 штифтов отвечают за передачу данных, остальные несут либо данные управления, либо инструкции принтера вроде сообщений от принтера о отсутствии бумаги в принтере.

Будущее

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

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

Для начала нужно разобрать, что подразумевает под собой аббревиатура lpt порт. Итак, под LPT подразумевается сокращение сочетания нескольких английских слов, а именно: Line Print Terminal. В переводе на русский язык LPT означает построчный принтерный терминал. Исходя из названия, становится понятно, что он в первую очередь предназначен для принтера. Но с теоретической точки зрения, к LPT можно подключать и некоторые другие аппараты. Для этой цели применяют специальный адаптер — переходник lpt. Следует добавить, что он имеет еще одно название, принятое в кругах пользователей – порт принтера.

В целом lpt порт обладает довольно длительной историей развития. Его разработали сотрудники компании Centronics, которая в начале 70-х годов прошлого века специализировалась на производстве матричных печатающих устройств. В начале 80-х годов данный порт принтера стал широко применяться со стороны фирмы IBM, которая использовала его на своих ПК. В то десятилетие lpt-порт даже успел стать стандартным вариантом, необходимым для осуществления подключения устройств с высокими скоростями, имеющихся в те годы.

Первоначально интерфейс LPT был представлен в нескольких отличных друг от друга редакциях. При этом в оригинальной версии он был однонаправленным, т.е. с его помощью можно было осуществлять передачу информации исключительно к периферийному устройству. Безусловно, подобного рода ситуация не устраивала многих пользователей, т.к. уже в те годы выпускались печатающие устройства, требовавшие осуществление передачи данных в двух направлениях. Именно поэтому некоторое время спустя, разработчикам пришлось несколько раз совершенствовать интерфейс LPTl. Данный процесс длился до тех пор, пока не был представлен его стандарт, получивший наименование IEEE 1284. Таким образом, разработчиками была представлена окончательная схема порта. Новый стандарт обладал поддержкой нескольких различных режимов работы. Кроме того, он был совместим с прежними стандартами. В своей финальной редакции интерфейс принтера мог поддерживать достаточно высокую скорость передачи информации на то время, которая достигала 5 Мб/с!

Как работает параллельный порт?

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

Несмотря на то что порт Centronics в большей степени использовался для организации подключения между принтером и ПК, тем не менее его применяли и для других целей. К примеру, с помощью LPT можно непосредственным образом соединить друг с другом два персональных компьютера – для этого обычно используется кабель Interlink. До тех пор, пока сетевые карты Ethernet не приобрели широкое распространение, соединение подобного типа пользовалось большой популярностью. Конечно, оно не могло обеспечить пользователей действительно высокими скоростями передачи информации, но, несмотря на это, такой способ подключения двух компьютеров друг к другу в те годы был чуть ли не единственным возможным. Следует добавить, что есть даже специальные ключи электронного типа, которые предназначаются специально для подключения к параллельному порту.

Об особенностях работы LPT

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

Для организации обычной передачи данных, как правило, необходимо 10 сигнальных линий. Что касается остальных линий, то они применяют для совместимости со стандартом кабеля Centronics. Максимальный параметр напряжения, который применяется в сигнальных линиях LTP, обычно равен +5 В.

Разъем порта и кабель Centronics

Если говорить о разъеме параллельного порта, то он располагается на самой матплате, хотя до середины 90-х годов прошлого столетия данный элемент обычно располагался на т.н. мультикарте, которая вставлялась в слот расширения. Выходом LPT является разъем DB25 с 25-контактами.

Чтобы установить соединение между персональным компьютером и печатающей оргтехникой с помощью персонального порта необходимо воспользоваться кабелем Centronics. При этом разъем, имеющийся на оргтехнике, является 36-контактным. Таким образом, основная особенность данного кабеля заключается в наличии двух разных разъемов по обеим сторонам.
Также примите во внимание, что довольно часто разъемом Centronics называют тот разъем кабеля, который предназначен для матплаты персонального компьютера, но на самом деле им является разъем для принтера – т.е. тот, который включает в себя 36 контактов. Что касается разъема, предназначенного непосредственно для LPT, то он именуется Amphenolstacker. Подобные различия в названиях обязательно нужно знать, чтобы называть все вещи своими именами.

Итог

В заключение можно сказать, что параллельный порт Line Print Terminal является интерфейсом ПК, который к нашему времени уже порядком устарел. Несмотря на большое распространение в последние десятилетия прошлого столетия, на сегодняшний день данный порт не располагает большой поддержкой со стороны многих компаний, выпускающих компьютерное оборудование, оргтехнику и программное обеспечение. Несмотря на это, LPT по-прежнему с успехом применяется на многих устаревших к нашему времени моделях ПК и печатающих устройств. Но довольно часто для организации подключения между компьютером и старым принтером требуется наличие переходника com-lpt. Сегодня их в принципе можно найти в продаже, но при наличии необходимых знаний и навыков, спять такой переходник можно абсолютно самостоятельно.

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

Порты персонального компьютера

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

  • Внутренние - для подключения устройств внутри ПК (жесткие диски, видеокарты, платы расширения).
  • Внешние - для подключения внешней периферии (сканера, монитора, клавиатуры, фотоаппарата, флешки).

В данной статье мы рассмотрим один из видов внешнего порта, а именно LPT-port, его принцип работы, подключаемые устройства и современное применение.

Появление LPT-порта

Изначально LPT-port (его еще называют разрабатывался только для подключения к ПК принтеров, это отражено даже в его названии - Line Printer Terminal, построчный принтерный терминал. Но в дальнейшем этот интерфейс стал применяться и для подключения других устройств: сканеров, дисководов и даже компьютеров между собой.

LPT-port был разработан компанией Centronics, занимавшейся в 70-х годах прошлого века производством матричных принтеров. Но уже через 10 лет его стала использовать фирма IBM для подключения своих скоростных устройств. Дело дошло до того, что было несколько вариантов данного интерфейса от разных производителей периферии.

В первоначальной версии этот порт был однонаправленным, то есть мог передавать данные только в одном направлении: от компьютера к периферийному устройству. Но это ограничение вскоре перестало устраивать пользователей, так как на рынок массово начали выходить устройства с возможностью передачи данных в обоих направлениях. Для этого различные производители предлагали свои усовершенствования - двунаправленный, ECP, EPP и другие. Пока в 1994 году не был принят международный стандарт IEEE 1284.

Схема LPT-порта

LPT-порт называется параллельным потому, что передача данных с помощью него осуществляется по нескольким проводникам одновременно, то есть параллельно. Этот интерфейс имеет 8-битную шину для передачи данных, 5-битную шину передачи сигналов и 4-битную шину передачи состояния.

Ниже представлена схема контактов LPT-порта.

Принцип работы LPT-порта

В простейшей конфигурации, чтобы реализовать принцип работы параллельного интерфейса, хватило бы только одиннадцати проводов, а именно: 1 провод на корпус (масса), 2 провода подтверждения и 8 проводов передачи данных. Но, по общепринятому стандарту IEEE 1284, каждый из восьми проводов передачи (2-9) данных имеет отдельное заземление.

Во время передачи данных оба устройства должны сообщать друг другу сведения о своем состоянии. Это реализуется с помощью контактов 18 и 35, на которые подается напряжение 0 В либо 5 В.

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

По контакту 11 передается компьютеру сигнал BUSY, сообщающий, что устройство выполняет действие (занято), обрабатывая ту информацию, что находится в буфере.

По контактам 12-14 передаются сигналы, сообщающие контрольные сигналы о состоянии принтера и конфликтах в его оборудовании.

По проводнику 12 на ПК передается информация о том, что в принтере нет бумаги. Компьютер реагирует на это передачей сигналов по линиям SELECT и ERROR и останавливает печать.

По проводнику 13 на компьютер передается информация о состоянии принтера - включен и готов или выключен и не готов.

По контакту 14 принтеру передается сигнал об автоматическом переводе строки.

По контакту 31 (16) передается сигнал о переводе принтера в начальное состояние и очищается буфер данных, т. е. все данные стираются из памяти принтера.

По контакту 32 (15) передаются все сигналы об ошибках во время передачи данных. Сигналы, передаваемые по этой линии, влияют на все остальные контакты и могут остановить печать. Например, часто возникающая ошибка принтера - Time Out, возникающая, когда принтер занят однотипной работой с данными и не может передать на ПК через сигнал BUSY, что он не готов к получению новых данных. Через некоторое время по линии ERROR на компьютер передается ошибка Time Out и новые данные не передаются. Иначе, при отсутствии сигнала ERROR, происходила бы дальнейшая передача данных, что привело бы к зависанию всей системы.

По контакту 36 (17) передается информация о готовности принтера к работе, например после устранения ошибки.

Режимы работы LPT-порта

Существует несколько режимов работы LPT-порта, которые позволяет использовать стандарт IEEE 1284:

  • SPP (Standard Parallel Port) — представляет собой однонаправленный порт, который отлично совмещается в работе с интерфейсом Centronics.
  • NibbleMode — использование этого порта является возможностью организации двунаправленного обмена данными в режиме SPP, при помощи использования управляющих линий (4 бит) для передачи данных от периферийного устройства к контроллеру.
  • Byte Mode— режим для двустороннего обмена данными, который используется довольно редко. Его применяли в некоторых старых контроллерах до принятия стандарта IEEE 1284.
  • EPP (Enhanced Parallel Port) — над разработкой этого порта работали сразу несколько известных компаний: Intel, Xircom и Zenith Data Systems. По своей работе это двунаправленный порт, который передает данные со скоростью до 2 Мбайт/сек.
  • ЕСР (Extended Capabilities Port) — этот вариант порта появился в результате работы двух компаний: HP и Microsoft. У него появились уже дополнительные возможности, например, возможность аппаратного сжатия данных, присутствие буфера и способность работать в режиме DMA. Также поддерживает работу двунаправленного обмена данными (симметричного), скорость которого может быть до 2,5 Мбайт/с.

Настройка LPT-порта

Настройка LPT-порта происходит в два этапа: предварительная настройка аппаратных средств порта и текущее переключение режимов порта прикладным ПО.

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

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

Виды реализаций LPT-порта

Раньше большинство производителей материнских плат размещали контроллеры LPT-port на своей продукции либо на задней панели платы. Был еще один вариант расположения. В некоторых случаях было удобно помещать контроллер на самой плате - коннекторе для подключения внешней LPT-port планки. Но с момента появления более скоростных интерфейсов для передачи данных материнских плат с распаянными LPT-портами становилось все меньше и меньше. Сейчас даже не у каждого производителя в ассортименте выпускаемой продукции имеются такие платы. И тогда на помощь приходят карты расширения, подключаемые к более современным интерфейсам:

  • PCI - LPT-port. Переходник между LPT-портом и более современным разъемом PCI.
  • PCI2 - LPT-port (PCI-Ex. 2.0). Переходник между LPT-портом и разъемом PCI-Ex.2.0
  • USB - LPT-port. Переходник между LTP-портом и современной версией широко используемого USB-разъема.

Современное применение LPT-порта

Из-за способности параллельной передачи данных такого порта, в 70-х - 80-х годах он зарекомендовал себя одним из самых быстроработающих интерфейсов компьютера. Поэтому он использовался даже для соединения 2-х компьютеров между собой. Но эта же особенность накладывает и ограничение на максимальную длину кабеля из-за возникающих помех в соседних проводниках. Длина не может превышать 5 м, иначе искажения сигналов превышают допустимые для корректного распознавания данных.

C появлением более скоростных интерфейсов актуальность LPT-порта сошла на нет. Второе дыхание ему придали радиолюбители, которые используют его для управления собранными схемами (освещение в доме, светомузыка и другие устройства).