Lpt порт: что это, назначение, распиновка

Как подключить заголовки портов lpt и com на материнской плате?

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

Благодаря тому, что 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 – Земля

Кабель для подключения IDE устройств

Линия данных 10

Линия данных 11

Линия данных 12

Линия данных 13

Линия данных 14

Линия данных 15

Ключ разъема (отсутствует)

Готовность канала ввода/вывода

Запрос на прерывание

Признак обращения к 16-разрядному порту

Подтверждение выбора диска

Как подключить принтер через lpt1 порт

Для подключения делаем следующее:

  1. Вставляем кабель в lpt-разъем.
  2. Теперь необходимо настройка. Вызываем системное меню. Для этого нажимается кнопка «Пуск».
  3. Выбираем раздел «Принтеры и факсы».
  4. У нас высветит окно со списком подключенных устройств. Нам нужно найти значок принтера, который используется.
  5. Нажимаем на этот значок правой кнопкой мыши.
  6. Выбираем пункт «Свойства».
  7. Открываем вкладку «Порты».
  8. Определяем порт, который используется.

Если устанавливается новое оборудование, делаем следующее:

  1. Открываем «Пуск».
  2. Выбираем «Панель управления».
  3. Открываем ссылку «Принтеры и прочие устройства».
  4. Разворачиваем «Принтеры и факсы».
  5. Указываем «Установка принтера». Эта команда находится на окне, которое открылось с левой стороны.
  6. Пропускаем первое окно мастера.
  7. Нажимая «Далее».
  8. Применяем флажок рядом с надписью «Локальный». Это появляется на втором окне мастера.
  9. Теперь необходимо подождать, пока принтер определится автоматически.
  10. Если мастер не обнаружил подключенное оборудование, нажимаем далее и выбираем функцию «LPT1»:(Рекомендуемый порт).
  11. Теперь необходимо подтвердить сохранения изменений. Для этого нажимаем кнопку «Далее». Выполняем все последующие рекомендации мастера.

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

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

Виды Разъёмов паралельного порта

Кабельный 36-контактный разъём Centronics для подключения внешнего устройства (IEEE 1284-B)

25-контактный разъём DB-25, используемый как LPT-порт на персональных компьютерах (IEEE 1284-A)

Порт на стороне управляющего устройства (компьютера) имеет 25-контактный 2-рядный разъём DB-25-female («мама») (IEEE 1284-A). Не путать с аналогичным male-разъёмом («папа»), который устанавливался на старых компьютерах и представляет собой 25-пиновый COM-порт.

На периферийных устройствах обычно используется 36-контактный микроразъем ленточного типа Centronics (IEEE 1284-B), поэтому кабели для подключения периферийных устройств к компьютеру по параллельному порту обычно выполняются с 25-контактным разъёмом DB-25-male на одной стороне и 36-контактным IEEE 1284-B на другой (AB-кабель). Изредка применяется AC-кабель с 36-контактным разъемом MiniCentronics (IEEE 1284-C).

Существуют также CC-кабеля с разъёмами MiniCentronics на обоих концах, предназначенные для подключения приборов в стандарте IEEE 1284-II, который применяется редко.

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

Для подключения сканера, и некоторых других устройств используется кабель, у которого вместо разъема (IEEE 1284-B) установлен разъем DB-25-male. Обычно сканер оснащается вторым интерфейсом с разъемом DB-25-female (IEEE 1284-A) для подключения принтера (поскольку обычно компьютер оснащается только одним интерфейсом IEEE 1284).

Схемотехника сканера построена таким образом, чтобы при работе с принтером сканер прозрачно передавал данные с одного интерфейса на другой.
Физический интерфейс

Планка COM+LPT

Answer

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry’s standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five http://jquery2dotnet.com/ centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.

Обновив свой подуставший компьютер на 775 сокете, с материнской платой Asus P5L-MX в которой были встроены хоть и старенькие, но полезные COM и LPT порты

на более современный c 1155 сокетом, и материнской платой MSI H61-P33 (B3). В ней к счастью тоже оказались встроены COM и LPT порты, но они были выведены в виде PLD штырьков.

Погуглив, стало ясно, что не так просто купить планку с COM и LPT в магазинах. Выяснилось, такого добра хватает на барахолках. Именно там было куплено две планки от раритетного ПК всего за 1.2$ с доставкой.

Читайте также:  Что такое сканер, для чего он нужен, что делает, как работает

Пришлось перепаивать разъём DB-9M COM порта, а PLD штырьки LPT порта на МП оказались с меньшим шагом, в 2 мм. А тот же COM порт был с шагом 2,54, что очень странно. Переделку планки смотрите на видео ниже.

Если не получается найти такую планку, изготовить выводы COM и LPT можно самостоятельно. Для этого понадобиться разъёмы, для COM – IDC-10, для LPT – IDC-26.

Обратите внимание перед покупкой IDC разъёма на шаг штырьков PLD на материнской плате. Он может быть 2 мм (шаг шлейфа 1 мм) или 2.54 мм (шаг шлейфа 1.27 мм)

Шлейф с шагом 1 мм или 1.27мм. Для COM – RC-10, для LPT – RC-26.

Разъёмы для COM – DB-9M, для LPT – DB-25F.

Далее для своей материнской платы нужно найти руководство пользователя, в нем описана распиновка PLD выводов COM и LPT на материнской плате. Находим схему расположения компонентов, на ней ищем выводы с названиями портов, это JCOM1 и JLPT1 рядом указаны номера страниц где находиться распиновка контактов.

Устанавливаем шлейф RC в разъём IDC. В шлейфе для COM порта нужно 9 проводков, а для LPT порта 25 проводков. Перед установкой лишние проводки в шлейфе можно аккуратно удалить, так как они не будут использоваться. На разъёмах IDC есть отметка в виде треугольна, по ней можно сориентироваться где находиться вывод первого контакта. Для удобности красный провод на шлейфе лучше размещать на первом контакте разъёма.

Теперь нужно припаять разъём DB к другому концу шлейфа. Для этого используем распиновку выводов COM и LPT портов.

Соединять выводы шлейфа с разъёмом DB начинаем с вывода №1 (красный провод). Название вывода №1 на материнской плате может отличаться от распиновки DB разъёмов, но сигнал будет один и тот же, последующие выводы нужно уже внимательнее определять.

На примере моей материнской платы.

1.RSTB# -> 1.Data Strobe

2.AFD# -> 14.Auto feed

3.PRND0 -> 2.Data 0

Так же следует обратить внимание на распайку COM и LPT портов на материнской плате. В зависимости от производителя нумерация выводов может быть вертикальная или горизонтальная (на примере COM порта):

Распиновка COM порта RS232


Правильная распиновка СOM-порта RS232

Распиновка COM порта — RS232 интерфейс был сконструирован более пятидесяти лет тому назад. А после этого был стандартизирован. В различных периодах усовершенствования технических возможностей компьютеров успешно применялся для подключения к телефонной линии с помощью модема. На данный момент такой интерфейс считается как уже вчерашний день. В основном его невостребованность заключается слишком низким быстродействием. Так как там задействованы линейные сигналы в однофазной форме. То-есть не дифференциальные.


Наружный вид девяти-контактного коннектора RS232

В современных устройствах на смену интерфейсу RS-232 пришел новый, отличающейся существенным быстродействием — USB. Тем не менее, и до настоящего времени их можно встретить в действительности огромное количество в различных аппаратах. Последовательный порт, цоколевка которого описана ниже, очень востребован в изделиях предназначенных для промышленных целей, а также для медицинского оборудования.

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

Характерные особенности порта

Что касается самой контактной колодки интерфейса RS-232 и ее кабельной составляющей, то они собраны на 9-пиновом разъеме D-Sub. Штыревые контакты размещенные в двухрядном варианте, для обеспечения точности подсоединения вилки к разъему, форма колодки имеет несимметричную конструкцию. Все контактные штырьки обозначены номерами, подробнее как делается распиновка COM порта обозначено в приведенной ниже таблице.

Номер контакта Назначение Обозначение
1 Активная несущая DCD
2 Прием компьютером RXD
3 Передача компьютером TXD
4 Готовность к обмену со стороны приемника DTR
5 Земля GND
6 Готовность к обмену со стороны источника DSR
7 Запрос на передачу RTS
8 Готовность к передаче CTS
9 Сигнал вызова RI

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

Соединительный кабель

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

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

Интерфейс разъема

Базовый интерфейс Centronics является однонаправленным параллельным интерфейсом, содержит характерные для такого интерфейса сигнальные линии (8 для передачи данных, строб, линии состояния устройства).

Данные передаются в одну сторону: от компьютера к внешнему устройству. Но полностью однонаправленным его назвать нельзя. Так, 4 обратные линии используются для контроля за состоянием устройства. Centronics позволяет подключать одно устройство, поэтому для совместного очерёдного использования нескольких устройств требуется дополнительно применять селектор.

Скорость передачи данных может варьироваться и достигать 1,2 Мбит/с.

Упрощённая таблица — схема сигналов интерфейса Centronics LPT — разъема

Контакты
DB-25 IEEE 1284-A
Контакты
Centronics IEEE 1284-B
Обозначение Примечание Функция
1 1 Strobe Маркер цикла передачи (выход) Управление Computer
2 2 Data Bit 1 Сигнал 1 (выход) Данные Computer
3 3 Data Bit 2 Сигнал 2 (выход) Данные Computer
4 4 Data Bit 3 Сигнал 3 (выход) Данные Computer
5 5 Data Bit 4 Сигнал 4 (выход) Данные Computer
6 6 Data Bit 5 Сигнал 5 (выход) Данные Computer
7 7 Data Bit 6 Сигнал 6 (выход) Данные Computer
8 8 Data Bit 7 Сигнал 7 (выход) Данные Computer
9 9 Data Bit 8 Сигнал 8 (выход) Данные Computer
10 10 Acknowledge Готовность принять (вход) Состояние Printer
11 11 Busy Занят (вход) Состояние Printer
12 12 Paper End Нет бумаги (вход) Состояние Printer
13 13 Select Выбор (вход) Состояние Printer
14 14 Auto Line Feed Автоподача (выход) Управление Computer
15 32 Error Ошибка (вход) Состояние Printer
16 31 Init Инициализация (выход) Initialize Printer (prime-low) Управление Computer
17 36 Select In Управление печатью (выход) Select Input Управление Computer
18-25 16-17, 19-30 GND Общий Земля
Читайте также:  Как сканировать на компьютер через принтер со сканером

Скачать распайку порта Centronics IEEE 1284 Printer Cable lpt — com9 можно и в виде картинки-изображения здесь —

.
Часто удобнее использовать для распечатки схемы именнно её.

По материалам http://ru.wikipedia.org/wiki/LPT

Полные таблицы — схема сигналов интерфейса Centronics LPT — IEEE-1284:

IEEE-1284A Pinning Sub-D25 A-connector:

IEEE-1284B Pinning 36 pin Amphenol B-connector:

IEEE-1284C Pinning MDR 36 pins C-connector:

Сигналы — Расшифровка — Pin Signal Source кабеля Centronics IEEE 1284 Printer lpt:

Слоты расширения материнской платы

(не совсем про
кабели, но пригодится)

Подключение двенадцати светодиодов к LPT порту

Содержание

^ Резюме

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

Внимание! Переходники USB-to-LPT для этого категорически не подходят. Платы PCI-to-LPT позволяют использовать лишь 8 светодиодов, а не 12.

Целью подключения диодов является получение бюджетной светомузыкальной установки или светомузыки.

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

Итак, от воды перейдем к делу.

^ Введение

LPT порт компьютера содержит 25 выводов, расположен на задней крышке системного блока, раньше к нему подключали принтеры. К некоторым из этих выводов можно подключить светодиоды (или что-нибудь другое, в зависимости от фантазии).

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

Обычно используются схемы (способы) подключения лишь восьми светодиодов. Здесь вы узнаете о том, как дополнительно подключить еще 4 светодиода, которые будут работать ни чуть не хуже. То есть, в сумме получается 12.

^ Теория (можно пропустить)

Специальная программа посылает данные в компьютерный порт ввода-вывода (378h). При помощи определенных электронных элементов этот порт связан с внешним, в данном случае, LPT портом, который выводит эти данные «наружу» в виде электрических сигналов.

Управление классическими 8-ю светодиодами осуществляется по порту 888 (378h), а управление четырьмя дополнительными — по порту 890 (37Ah). (Базовый порт 378h)

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

Вся картина выглядит так:

Соответствие битов портов ввода-вывода и контактов LPT порта ( * – выводы с инверсией)

Аппаратная часть Софтовая часть
№ светодиода № контакта № порта № бита
1 2 888 (378h)
2 3 888 (378h) 1
3 4 888 (378h) 2
4 5 888 (378h) 3
5 6 888 (378h) 4
6 7 888 (378h) 5
7 8 888 (378h) 6
8 9 888 (378h) 7
9 1 * 890 (37Ah)
10 14 * 890 (37Ah) 1
11 16 890 (37Ah) 2
12 17 * 890 (37Ah) 3

Увидеть светодиод, подключенный непосредственно к контактам (пинам) LPT порта, можно в статье «Светодиодное испытание LPT порта».

^ Практика

^ Практика — Аппаратная часть

На рисунке слева изображена лицевая сторона вилки DB-25M, которая рекомендуется для подключения нашего устройства к компьютеру. На рисунке справа показана схема подключения диодов к обратной стороне вилки DB-25M. Номера светодиодов на схеме обозначены в кружочках. Обратите внимание, что светодиод №1 подключается к пину №2 и т.д.


Как припаивать светодиоды к обратной стороне вилки DB25M

На следующем рисунке показано как подключаить светодиоды напрямую к LPT-порту (при отсутствии вышеуказанной вилки DB-25M). LPT порт симметричен, поэтому его пины очень легко перепутать.

Внимательно рассмотрите маркировку пинов порта, убедитесь, что перемычка, соединяющая контакты с 18 по 25, будет соединять именно их (а не контакты с 14 по 21). Наберитесь терпения и проверьте каждый проводок и контактик — это избавит вас от проблем, которые могут задержать окончание работы на несколько дней.


Как подключать светодиоды к LPT порту компьютера (к лицевой стороне розетки DB25F)

Номиналы резисторов лучше подбирать экспериментально, они зависят и от используемых светодиодов и от особенностей конкретно вашего порта. Рекомендую попробовать с резистором 33 или 47 Ом. Если яркости будет недостаточно — резистор можно будет не ставить. Для большей точности следует измерять ток, текущий через светодиод, выбирая сопротивление, при котором ток соответствует номинальному (обычно 10…20mA). Подробнее смотрите в статьях «Универсальная методика рассчета питания светодиодов», «Параметры светодиодов», «Питание для светодиодов».

Все 12 диодов рекомендуется брать одинаковой марки и одинакового цвета. Прежде чем навеки припаивать — определитесь с полярностью.

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

Светодиоды можно разместить как угодно, но рекомендуется такое расположение:

Конструкция панели светодиодов

То есть, 12 диодов расположены вдоль окружности радиусом 30. 40 mm. Маленькие перечеркнутые кружочки обозначают светодиоды; цифры, расположенные рядом, указывают их номера. На такой конструкции можно показывать время, пускать замкнутые «бегущие огни». Обычно фантазия сама подсказывает кучу всевозможных эффектов…. Короче, выбор рационального размещения диодов — дело вкуса и фантазии.

В качестве панели можно использовать корпус системного блока, крышку от 3.5” или 5.25” отсеков, пластину из гетинакса или просто толстый картон. Отверстия желательно получать сверлением, естественно, при помощи дрели и сверла подходящего диаметра. Необходимо, чтобы диод туго входил в отверстие и не выпадал оттуда. Припаять светодиоды сначала к печатной плате — хорошая идея, но это вовсе не обязательно.

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

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

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

^ Практика — Софт

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

Программа WndLpt позволяет управлять светодиодами в разных режимах:

— интерактивно с клавиатуры и мыши;

— автоматически, по заранее созданному сценарию.

Кроме того, программа может работать как плагин для трех популярных плееров: Winamp, WMP, AIMP2.

WndLpt работает адекватно для любого количества светодиодов от 1 до 12.

Исторически WndLpt дополняется маленькой программкой LptPort.exe, которая позволяет просто управлять 12-ю светодиодами с клавиатуры (Windows 98/NT/ME/2000/XP/Vista/Seven).

Краткое описание WndLpt-0.2.5

Эта программа самостоятельно управляет светодиодами в соответствии с заранее подготовленным сценарием (скриптом). Другая возможность программы — светомузыка, управляемая звуком либо со звуковой карты, либо с аудиоплеера. В последнем случае (получение звука от аудиоплеера) необходимо использовать единый плагин визуализации vis_wndlpt.dll разработанный для трех популярных плееров: Winamp 5, WMP (Windows Media Player) и AIMP2. Полное описание программы находится на странице «Управление выходами LPT порта».

Кроме того, полезно поместить в автозагрузку ярлык:

“C:Program filesWndLptwndlpt.exe” -off

для того, чтобы при загрузке все диоды выключались (или включались -on).

Или ярлык следующего содержания:

“C:Program filesWndLptwndlpt.exe” -bkgnd script.txt

для того, чтобы при загрузке операционной системы автоматически выполнялся скрипт script.txt.

  • Все файлы, загруженные из интернета, проверяйте антивирусом.
  • Убедитесь, что LPT порт разрешен настройками BIOS’а и его базовый адрес равен 378h.
  • Чтобы дополнительные четыре светодиода светились так же ярко, как остальные восемь, для используемого LPT порта в BIOS’е должен быть установлен режим EPP.
  • Удостоверьтесь, что к LPT порту не подключен принтер или любое другое устройство, отличное от описываемого здесь.
  • При наличии нескольких LPT портов будьте уверены, что по адресу 378h находится именно тот порт, который надо.
  • Запись в ключ реестра значения отличного от базового адреса существующего LPT порта может привести к непредсказуемым результатам (“краху системы”) во время запуска или работы программы.
  • Существует три стандартных базовых адресов LPT порта: 378h, 3BCh, 278h (буква h после числа означает, что оно записано в шестнадцатеричном виде).
LptPort-0.1.1

Это консольное приложение позволяет при помощи клавиатуры установить любое состояние на выходе порта. Интуитивно понятное управление производится клавишами клавиатуры.

1, 2, 3, 4, 5, 6, 7, 8, 9, 0, -, =

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

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

Если ключ не найден, она пытается обратиться к порту по адресу 0x378. Если по указанным портам устройств не существует, вместо надписи Base port: 378h выводится No found LPT port!

Затем зажигается светодиод №1 и программа готова выполнять команды пользователя. Ознакомится с примером использования данной программы можно в статье «Светодиодное испытание LPT порта».

^ Практика — Настраиваем порт

Когда LPT порт встроен в материнскую плату

Если LPT порт встроен в материнскую плату, то все решается через настройки BIOS:

Во-первых, надо перезагрузить компьютер.

Во-вторых, во время запуска и самотестирования машины следует нажимать на кнопку Del (Delete). В результате, на экране монитора должен появиться BIOS. Желательно чтобы манипуляции над BIOS’ом проводил немного опытный и знакомый с этой штукой человек.

Ищем секцию Integrated Peripherals, залазим в нее, и убеждаемся в соответствии следующих параметров заданным значениям:

[Integrated Peripherals]

Onboard Parallel Port = Enabled или 0x378h

Parallel Port Mode = EPP

Настраивать следующие пункты не требуется:

ECP Mode Use DMA

В зависимости от версии BIOS названия и система установки этих значений могут меняться.

Выход из BIOS’а должен производиться с сохранением параметров, т.е. пунктом Save & Exit Setup. Далее подтверждаем действие нажатием на кнопку Y и нажимаем Enter. Компьютер перезагружается, загружается и снова готов исправно работать.

Когда LPT порт встроен в PCI карту

Если LPT порт расположен на отдельной PCI карте, обратитесь к инструкции по настройке программы для работы с таким портом. то четыре светодиода, подключенные к пинам 1, 14, 16 и 17 будут светится тускло и это не лечится

Для поиска ошибок в разводке проводов читаем статью «Светодиодное испытание LPT порта» и сверяем свои результаты с ожидаемыми.

^ Фотосессия

Вид спереди

— Зачем нужны лишние отверстия?

— Оставлено для совместимости.

Светодиоды с натугой вставлены в отверстия подходящего диаметра, полученные путем сверления.

Вид сзади

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

Читайте также:  Кабеля для принтера USB (ЮСБ) LPT, сетевой шнур: характеристики, правила подключения

Для лучшего понимания того что здесь напаяно, пройдите по ссылке «Схема панели светодиодов, спроецированная на фото этой панели».

Видеофайл, демонстрирующий работу устройства.

^ Ответы на часто задаваемые вопросы, FAQ

^ Скачать

WndLpt

Автоматическое управление светодиодами по заранее записанному алгоритму.

LptPort

Управление светодиодами с клавиатуры. Это удобно в целях отладки устройства, а также для творческих поисков новых световых эффектов. Данные возможности также встроены в программу WndLpt и доступны на вкладке Manual.

Программа является частью проекта WndLpt и скачивается вместе с ним.

// Обратная связь: m a v i u s @ y a n d e x . r u
// [mavius]
// GUID:

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

Одним из самых старых портов компьютера является 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.

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

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

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

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

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

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

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

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

Назначение выводов разъема параллельного порта 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 расшифровывается как line print terminal, что в переводе на русский означает построчный терминал принтера. Действительно, он разрабатывался именно для использования создания соединения между печатающим устройством и персональным компьютером. Параллельный порт Lpt — это уже довольно старая технология, но она используется до сих пор для подключения принтеров к компьютеру. На новых современных материнских платах такой разъем можно уже не встретить. Знать особенности, принцип работы, назначение не будет лишним и всегда пригодится при взаимодействии с печатающими устройствами. В этой статье подробно описаны все вышеупомянутые моменты. Тут же найдете схему распиновки Лпт порта, нюансы использование разъема в операционных системах Windows 7 или 10.

История

Датой рождения лпт технологии считается начало 1970-ых годов. Разработкой кабеля занималась фирма Centronics, потому еще можно встретить название Centronics порт. Уже через десять лет идеей заинтересовалась американская компания IBM и интерфейс начал активно использоваться на устройствах этого известного бренда.

Изначально разъем имел более простую архитектуру. Его первые версии были в состоянии передавать информацию только в одном направлении, но и это считалось большой удачей. Уже более свежие доработки позволили изменить ситуацию. Устройство было усовершенствовано до мирового стандарта IEEE 1284 и могло развивать скорость передачи до 5 Мб за секунду. Позже он был окончательно вытеснен USB, который мы сейчас активно используем.

Принцип действия

По принципу действия Lpt интерфейс называется параллельным не просто так. Физически он состоит из множества проводников, по которым информация циркулирует одновременно и параллельно друг другу. Это основное свойство и отличие лпт от последовательного COM кабеля. Lpt разъем включает в себя восемь мелких проводников для передачи данных и несколько линий для отправки сигналов управления.

Такая структура позволяет соединять между собой два персональных компьютера в одну сеть. Все что нужно для этого — наличие портов и специального шнура Interlink. Во времена, когда сетевые карты были редкостью, такая организация сети была довольно популярной. Но требовалось вносить настройки в BIOS (включать parallel port mode), что вызывало дополнительные неудобства.

Параллельный порт и кабель Centronics

Мы уже привыкли, что если в ПК есть Lpt, то он расположен именно на материнской плате. Но так было не всегда. Длительное время разъем располагался отдельно на мультикарте, где были другие порты. Сама карта устанавливалась непосредственно на плату ПК. Выход интерфейса представлял собой 25 контактную розетку. Ее правильное название DB25.

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

Особенности работы

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

Еще одной особенностью работы можно считать использование только десяти линий. Восемь из них привлечены к передаче информации. Одновременно перемещается 8 бит данных, что преобразует их в 1 байт. Еще две линии отвечают за сообщения состояния устройства. Их может быть два — готов и занят. Все остальные каналы используются технологией Centronics в своих целях.

Видео

Схема распиновки

  • 1 — Сигнал готовности.
  • 2-9 для передачи восьми бит данных.
  • 10 — подтверждение от устройства.
  • 11 — занят.
  • 12 — нет бумаги.
  • 13 — принтер работает.
  • 14 — автоподача.
  • 15 — error.
  • 16 — начало работы устройства.
  • 17 — выбор.
  • 18–25 — земля.

Порт Лпт на Windows 7 и 10

На новых ПК или ноутбуках под управлением современных версий Виндовс, таких, как 7 и 10, можно не встретить в наличии port Lpt. Ситуации бывают разные, потому потребность в таком разъеме возникает очень часто. В этом разделе найдете инструкцию, как вернуть на место нужный порт в семерке и десятке.

1. Откройте диспетчер устройств. Нажмите комбинацию Windows+R и введите команду devmgmt.msc.

2. Кликните правой клавишей мыши по названию Вашего ПК и из меню выберите «Установить старое устройство».

3. Нажимайте кнопку «Далее» без изменений.

4. В окне выбора места хранения драйвера укажите ручную установку.

5. В списке найдите «Порты COM и LPT».

6. Слева выберите «Стандартные порты», а справа нужный тип порта. Последовательный — это COM порт. Порт принтера — это LPT.

Особенности и принцип работы 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. Сегодня их в принципе можно найти в продаже, но при наличии необходимых знаний и навыков, спять такой переходник можно абсолютно самостоятельно.

LPT (mode EPP, 0,5- 1,7 Mбайт/с)

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

Читайте также:  3d принтер: что это такое, как работает, виды и типы, чем печатает

Проект LPT, который мне удалось сделать, выполнен на микросхеме типа CPLD XC95144XL фирмы Xilinx, программное обеспечение написано для ОС – Windows 98/ME/XP. Режим работы данного параллельного порта выбран не случайно – EPP. Реально максимально возможная скорость передачи данных лежала в пределах 0,5 -1,7 Мбайт/с, что для некоторых задач вполне хватало.

Чтобы Вам не терять время, которое мне пришлось потратить на изучение всех режимов работы данного LPT порта, его программирование, особенностей программирование портов для операционных систем Windows 98/ME/XP, выбор элементной базы для проекта, создание принципиальной схемы, печатной платы и других тонкостей, включая проектирование и создание битового потока для ПЛИС типа CPLD XC95144XL. Есть два пути: коммерческий и некоммерческий. При коммерческом способе (с соблюдением конфендициальности секретов Ноу-хау) – Вы получаете самую полную информацию по данному проекту, экономя свое драгоценное время и финансы. При некоммерческом способе – Вы можете получить только незначительную часть того, что необходимо или использовать в качестве справочной информации.

Ну, пожалуй начнем….

Сам адаптер параллельного LPT порта представляет собой часть контроллера размещенного на материнской плате любого персонального компьютера и состоит из набора регистров, расположенных в пространстве ввода/вывода. Регистры порта адресуются относительно базового адреса порта (378h или 278h). LPT порт может использовать линию запроса аппаратного прерывания, обычно IRQ7 или IRQ5. Наличие LPT порта указывает на присутствие в задней стенке или в другом месте – разъема с 25 контактами типа DB-25 (мама). Параллельный LРТ порт имеет внешнюю 8-битную шину данных, 5-битную шину сигналов состояния и 4-битную шину управляющих сигналов.

Для настройки режима LPT порта нужно войти в ВIOS материнской платы. BIOS разных производителей не сильно отличаются друг от друга, но и бывает так, что не все режимы можно установить из-за урезанных дешевых контроллеров, которые эти режимы не поддерживает. Нас будет интересовать установка “чистого” режима – EPP. Отсутствие такового говорит об урезанном контроллере и для дальнейших манипуляций нет гарантий стабильной работы даже в режиме ECP+EPP. Бывают еще дополнительные настройки данного режима – EPP 1.7 или EPP 1.9, но это другая история.

Подробно описывать режим EPP не буду, так как литературы достаточно. А основные преимущества отмечу:

Во-первых, все информационные и управляющие сигналы для каждого из 4-х режимов (цикл записи данных, цикл чтения данных, цикл записи адреса, цикл чтения адреса) формируются аппаратно.

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

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

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

Реальная скорость передачи данных лежит в пределах от 0,5 Мбайт/с до 1,7 Мбайт/с. Не много, но достаточно, для большинства задач, которые могут быть выполнены на данном интерфейсе. Поскольку слишком много факторов влияют на данную скорость, рекомендую для достижения максимально возможной и стабильной скорости придерживаться следующих некоторых из правил:

– не увеличивать длину кабеля более 1,5 метров, для избежания удлинения циклов записи и чтения из-за вносимых кабелем задержек;

– не пользоваться прямым обращением к портам ввода/вывода с помощью ассемблерных инструкций в среде Windows XP, из-за особенностей программирования для данной операционной системы. В других более ранних версий намного проще;

– не забывать про согласование приемных и передающих цепей интерфейса;

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

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

– ну и еще чего много надо, но это ноу-хау!

Теперь поговорим о ПЛИС…

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

– FPGA (Field Programmable Gate Array);

– CPLD (Complex Programmable Logic Devices).

В данном проекте в виду небольшого числа требуемых для реализации логических элементов и триггеров, подойдет ПЛИС типа CPLD XC95144XL фирмы Xilinx. Подробное описание на русском языке по данной микросхеме, Вы можете свободно скачать по адресу: http://www.plis.ru/pic/pict/File/9500xl_rus.pdf. Здесь достаточно понятно описывается внутренняя структура ПЛИС типа CPLD.

Отмечу только некоторые особенности и принципы программирования ПЛИС типа CPLD.

– для того чтобы запрограммировать данный тип ПЛИС необходимо иметь загрузочный JTAG-кабель. Принципиальную схему данного кабеля для подключения через LPT порт можно скачать по адресу: http://www.plis.ru/pic/pict/File/jtag_cable.pdf. Если позволяют финансы, то лучше купить готовый кабель, стоимость которого не велика (25$). Есть загрузочный JTAG-кабель для USB-порта, но стоит намного дороже, в зависимости от того с отладочной платой его брать или без нее. Для удобства отладки в дальнейшем, лучше брать именно загрузочный JTAG-кабель для USB-порта, поскольку отпадет проблема отключать и снова подключать его в варианте для LPT порта, устройство которое реализовано в данном проекте тоже подключается к LPT порту! Можно и обойтись и двумя компьютерами, можно одним компьютером и коммутатором для LPT порта. Кому как нравится, выбор за Вами.

– загрузка битового потока осуществляется через специально выделенные выводы JTAG-порта (TCK, TDI, TDO, TMS). Сам битовый поток создается с помощью специальной системы проектирования, предоставляемый производителем (в нашем случае – Xilinx) на платной или бесплатной основе. Для простых и не больших проектов подойдет бесплатная и свободно скачиваемая версия – ISE WebPACK 9.2i. Для того, чтобы ее получить необходимо зарегистрироваться на сайте производителя для получения доступа к файлам на странице: http://www.xilinx.com/support/download/index.htm. Для сложных и больших проектов потребуются полнофункциональные, новые версии – ISE 9.2i, ISE 10.1i или более поздние. Производитель предоставляет 60-ти дневные версии для ознакомления, а потом все равно требуется иметь лицензию. Как работать и какую использовать систему проектирования рассмотрим позже.

Читайте также:  Фото 10 на 15: какой это формат, размер в пикселях и дюймах

– во время загрузки, в виду особенностей технологии и реализации внутренних схем, используемых в ПЛИС, не рекомендую подавать тактовые сигналы на выводы, а особенно на управляющие выводы глобальных сигналов тактирования (GCK) для нормального завершения процесса загрузки.

– для избежания выхода из строя выводов микросхем ПЛИС, используете рекомендации по согласованию выходных уровней сигнала, описанных в документации на микросхему CPLD XC95144XL фирмы Xilinx.

– еще чего много надо, но это опять ноу-хау!

Дальше немного о системе проектирования, которое необходимо использовать для создания битового потока ПЛИС…

В настоящее время, системы проектирования имеют направленность к тому, чтобы разработчик использовал языки программирования для описания схем – VHDL или Verilog. Мотивируя это тем, что это удобно и быстро. На самом же деле смысл заключается в том, что созданный ранее проект можно перенести на другую платформу или другой проект. Один написал, а другие этим пользуются. К сожалению, я бы не пошел таким путем, и не посоветовал бы и Вам идти на начальном этапе. Использовать эти языки можно, но схемотехника всегда останется главным языком разработчика, что все же пока сохраняется в системах проектирования, как один из способов создания принципиальной схемы.

Я пытался работать во многих системах проектирования выпускаемых фирмой Xilinx. Начиная от XACT 6.0 и кончая, последней версией, на сегодняшний день – ISE 10.1. Более понятной, простой, удобной и удачной версией считаю – ISE Foundation 4.1i. Единственными минусами будут не возможность использовать самых современных кристаллов и новых средств отладки схем, что возможно в более новых версиях. Однако частое смена версий (каждый год), большое число ошибок, неграмотное программирование отдельных модулей под ОС Windows XP или Windows Vista, не оптимизированный компилятор упаковки в кристалл, и еще много чего вызывает отвращение с одной стороны, и появление новых инструментов отладки с другой стороны вызывает восторг. Ну, это уже так производитель сам выбрал путь, оставляя нам лишь выбирать то, что душе угодно. Можно воспользоваться сторонними производителями систем проектирования, выбрать другого производителя ПЛИС (Altera), но поверьте там тоже, есть свои достоинства и недостатки, c которыми мне то же приходилось сталкиваться. Свой выбор я сделал в пользу фирмы Xilinx, как самый крупный лидер на мировом рынке микросхем программируемой логики.

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

Системы проектирования всегда стоили не мало, и где их взять каждый решает сам. В нормальном обществе за все надо платить, к этому рано или поздно даже в нашей стране это будет. Но есть и другая сторона вопроса сколько платить? Ни для кого не секрет, что в Интернете есть полно пиратов, которые продадут Вам за гроши данные системы проектирования, или много keygen-ов с помощью которых можно взломать даже 60-дневные версии. Но Я сторонник – легального или свободного распространяемого программного обеспечения. Платили бы нормальную зарплату и даже домой можно купить – если надо.

Так что для начала и для не больших проектов подойдет бесплатная и свободно скачиваемая версия – ISE WebPACK 9.2i.. Ну если позволяют финансы, то лучше обратиться к одному из дилеров фирмы Xilinx в России – Инлайн Групп.

Вот и добрались до самого проекта…

Данный проект выполнен в виде устройства сопряжения между компьютером и внешним устройством, в моем случае для управления накопителем на FLASH памяти. В принципе устройство сопряжения получилось универсальным и может использоваться для управления любым устройством имеющий скорость передачи данных не более 1,7 Мбайт (13,6 Мбит). Основой проекта служит ПЛИС типа CPLD XC95144XL фирмы Xilinx. Данная микросхема программируемой логики содержит 144 макроячейки, что эквивалентно 3200 вентилям. В каждой макроячейке содержится по одному триггеру, таким образом, всего в нашем распоряжении – 144 триггера. Для того, чтобы согласовать внешнее устройство с LPT портом персонального компьютера по протоколу EPP, вполне хватит данных ресурсов ПЛИС. Поскольку протокол EPP позволяет формировать все сигналы аппаратно, это сильно упрощает задачу и экономит ресурсы ПЛИС.

Само устройство сопряжение выполнено на двух сторонней печатной плате:

Размеры и габариты значения не имеют, каждый может изменять их по своему усмотрению. Одно остается неизменным – принципиальная схема данного устройства, в которую мало кто будет изменять или дополнять. Так как мною уже пройден длинный путь и учитывая замечательное свойство выводов ПЛИС – быть программируемым на любую функцию внешнего вывода, то это сильно упрощает саму разводку печатной платы и компоновку элементов печатной платы. Грамотная разводка печатной платы – является одним из главных факторов влияющих на работоспособность любого электронного устройства. Приводить здесь принципиальную электрическую схему и монтажную схему печатной платы мне бы не хотелось бы (ноу-хау), но структурную схему представляю для пояснения данного проекта.

Читайте также:  Драм и тонер картридж, драм-юнит: что это такое

Сама структурная схема выглядит так:

Самая сложная и интересная часть данного проекта — отладка и стыковка программной и аппаратных частей между собой. Тут надо четко понимать, что главным элементом управления является персональный компьютер (PC), а не подключенное к нему периферия, которая тоже может содержать собственные микропроцессоры, контролеры и т. д. Поэтому в данном проекте протокол связи и обмена информации между персональным компьютером и периферией, через устройство сопряжения продуман так, чтобы добиться максимальной возможной скорости передачи данных, надежной и простой системы обмена информации, минимальных требований к написанию программной части проекта.

Программное обеспечение для данного проекта работает и написано для операционных систем семейства Windows 98/ME/XP. Здесь тоже полно подводных камней и хитростей, которые нужно будет учитывать при написании и использовании драйвера устройства сопряжения, для каждой из операционных систем семейства Windows в отдельности. При написании программы всегда нужно играть по правилам самой Microsoft, а именно использовать функции WinAPI и знать как обойти защиту ядра системы. Нужно учитывать уровень приоритета на прерывания от периферии и грамотно программировать, и по мере необходимости использовать готовые решения других производителей.

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

В целом проект получился удачным и может быть легко перестроен под другую задачу. Не смотря на то, что LPT порт устаревает, скорость считывания данных (до 13,6 Мбит/с) выше, чем у Usb-порта работающего в режиме Full speed, где теоретически возможна скорость передачи до 12 Мбит/c, реально намного ниже 5 – 11 Мбит/с, но это другая история.

Lpt порт: что это, назначение, распиновка

Итак, настало время написать простую программу, иллюстрирующую приемы чтения и записи данных в LPT порт. Пока напишем ее в консольном варианте, дабы на этапе понимания и разбора этой программы не пришлось “копаться” в дебрях кода под Windows (не переживайте, следующая статья будет посвящена как раз приложению c визуальным интерфейсом).

Прежде чем двигаться дальше и писать программу, необходимо разобраться с LPT портом, посмотреть из чего он состоит и как нам воспользоваться им в своих целях. Если говорить на бытовом уровне, то можно сказать, что LPT порт это набор контактов, на которых мы можем установить напряжение 0 или +5 В (логическая 0 и 1) из программы или это может сделать внешнее устройство снаружи.

Объяснение и вправду ОЧЕНЬ бытового уровня 🙂 Забавно спустя 5-6 лет перечитывать свое “творчество”, которое сейчас вызывает улыбку.

Давайте разберемся, какими контактами мы можем оперировать, а какими нет. В этом нам поможет рисунок ниже (его рисовал не я, автор мне неизвестен. Но он уж больно хорош, я и сам им постоянно пользуюсь).

Из рисунка видно, что выводы порта можно разделить на четыре группы: это ‘земляные’ выводы. Они обозначены черным цветом (контакты 18-25). Все они соеденены между собой, поэтому для своих разработок в качестве земли можно использовать любой из них.

Красным цветом обозначены выводы так называемого регистра Data (контакты 2-9). Под регистром будем понимать (на бытовом уровне) объдинение группы контактов LPT порта. В регистре Data их 8 штук. Это самый толковый регистр – он позволяет нам как из программы, так и из внешнего устройства установить на его контактах лигическую 0 или 1, т.е. он двунаправленный. Именно его мы и использовали в нашей первой программе Port.exe – подключали светодиод ко 2-му выводу порта (как теперь видно, этот вывод принадлежит регистру Data, является его нулевым битом) и 25 выводу (земля), и спомощью программы управляли подачей напряжения на вывод 2 относительно земли. Чтобы обращаться к этому регистру, надо знать его адрес: 0x378 – в 16-ричной системе или 888 в десятичной.

На рисунке написано &H378 – это тоже самое что и 0x378, просто первое обозначение присуще языку Pasсal и ему подобным, мы же пишем на Си.

Опять вспоминая программу Port.exe, заметим, что обращались мы к регистру с помощью следующей функции _outp(Address, 0);, где переменная Address была предварительно определена как 888. Теперь понятно, что этим мы указывали функции _outp(), что мы хотим работать именно с регистром Data.

Продолжим рассмотрение порта. Осталось еще два регистра. Следующим будет регистр Status (контакты 10-13, 15). Это однонаправленный регистр. Управлять им можно только “снаружи”, через внешнее устройство (имеется в виду изменять данные на нем; читать можно из любого регистра в любую строну). Он имеет адрес 0x379 – в 16-ричной системе или 889 в десятичной. И регистр Control (контакты 1, 14, 16-17). Он имеет всего 4 контакта и может управляться только программой. Его адрес: 890 в десятичной системе.

Вывод: у нас есть 17 выводов которыми мы можем управлять по своему усмотрению.

Теперь рассмотрим, а как происходит запись и чтение данных в регистры LPT порта, т.е. как нам установить на нужных выводах 0 или 1.

Запись/чтение данных в регистр Data

Итак, рассмотрим сразу практическую задачу. Хочу чтобы на выводе LPT порта под номером 3 (бит D1 регистра Data) была установлена логическая 1 (т.е. чтобы между ним и землей было +5 В) и на остальных выводах этого регистра (2,4-9 выводы порта) были нули. Пишем код:

Я использовал функцию Out32() библиотеки inpout32.dll, будем привыкать к ней, т.к. дальнейшие примеры будем разбирать именно на этой библиотеке. Если этот код выполнить, то получится что на выводе порта 3 есть +5 В, а на 2,4-9 “висит” ноль. Как это получилось?

Начнем разбираться: первым параметром функции Out32() мы передаем число 888. Как вы уже знаете, это адрес регистра Data LPT порта. Теперь функция знает куда ей писать данные. Далее вторым параметром мы передаем число 2, т.е. значение для записи в порт. Прошу обратить внимание, что двоика в десятичной системе счисления. Что происходит далее? Для лучшей визуализации процесса, переводим число 2 из десятичной в двоичную систему счисления. Каждый разряд двоичного числа справо на лево записывается по порядку в регистр начиная с младшего разряда D0 (вывод 2 порта) и заканчивая старшим D7 (вывод 9). Если вы переведете число 2 из десятичной в двоичную систему счисленияи дополните число по 8 разрядов (по числу разрядов в регистре) то получите 00000010. Нулевой разряд двоичного числа – (самую правый) записывается в D0, далее 1 записывается в D1. И так до конца, все 8 разрядов.

Читайте также:  Как посмотреть историю печати принтера и список распечатанных документов

Ну что, устали немного пока прочитали? Сейчас станет понятнее. Давайте в регистр Data запишем число 245. Пишем код:

Опять переводим 245 в двоичную систему счисления и справо на лево записываем разряды числа в соответсвующие биты регистра. В итоге получим, что на выводах LPT порта под номерами 2,4,6-9 присутствует напряжение +5 В, на выводах 3,5 – ноль.

Ну что, теперь я думаю, с записью данных в регистр Data мы разобрались. Надо отметить, что диапозон десятичных чисел, которые можно записать в регистр Data лежит в пределах от до 255. Регистр он у нас 8-ми разрядный, значит максимальное число комбинации 0 и 1 на его выводах составляет 2 8 -1=256-1=255.

Чтение данных

Теперь давайте считаем ранее записанные данные в порт, а именно узнаем текущий статс регистра Data. Мы хотим узнать, на каких выводах регистра Data сейчас высокий уровень напряжения, а на каких низкий. Помните, выше мы записали в порт число 245? Давайте его сейчас получим из порта. Пишем код:

Inp32() – это функция для чтения данных из порта библиотеки inpout32.dll. Единственным параметром для нее является адрес того регистра, откуда мы хотим прочесть данные. На выходе она возвращает десятичное число, соответствующее текущему содержомому регистра. Выполнив этот код, переменная data будет содержать число 245. Что это значит? Чтобы разобраться, переводим число 245 из десятичной в двоичную и смело можем сказать что на выводах порта 2,4,6-9 сейчас +5 В а на выводах 3,5 0 В. (см. рисунок выше)

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

Запись/чтение данных в регистр Control

Теперь поуправляем регистром Control. Он однонаправленный, данные в него может записать только наша программа. Обратите внимание на несколько особенностей этого регистра. Во-первых, он содержит всего четыре рабочих вывода. Значит в него можно записать число в диапозоне от 0 до 2 4 -1=16-1=15. Во-вторых, он имеет очень непрятную особенность: некоторые из его выводов инвертированы, т.е. если вы на этот вывод пишете 1, то на ней устанавливается 0. И наоборот, читаете 1, а на самом деле там 0. Поэтому, значение записываемых данных и читаемых данных не совсем очевидны. Приведу пример записи числа в регистр Control. Пишем код:

И пример чтения:

Запись/чтение данных в регистр Status

Наконец, добрались до регистра Status. Он однонаправленный, данные в него может записать только внешнее устройство, т.е. мы в программе можем только читать содержимое этого регистра. Причитав данные из Status, и переведя их в двоичное число, сразу довольно трудно понять что же реально творится с напряжениями на выходах этого регистра. Во-первых, он тоже имеет инвертированные выводы, а во-вторых рабочими являются биты под номерами 4-7, а 0-3 не используются, и следовательно число записывается довольно хитро.

Возникает вопрос, а как эти данные на нем установить? Довольно просто. В качестве внешнего устройства, пока, будете выступать вы. Выполните такой код.

Вы получите некоторое число. Теперь возмите проводник и соедините им любой из земляных выводов порта (18-25) с каким-нибудь выводом регистра Status (10-13, 15), например с десятым. И снова выполните чтение. Вы получите другое число. Уберите проводник. Прочитав, получете исходное число. Как это работает? Исходно, на всех выводах этого регистра находится высокий уровень напряжения +5 В. Когда мы соеденили один из его выводов с землей, то на нем, соответственно, напряжение стало равным нулю, т.е. логический ноль. Можно попробовать замыкать и другие выводы регистра Status на землю, замыкать сразу несколько.

Следует заметить, что при таких опытах с регистром Status возникает не совсем понятная ситуация с другими выводами порта LPT. После первого замыкания выводов Status, начинают мигать выводы Data и Control. Это связано с тем, что порт LPT предназначен для подключения принтера, а выводы Status он использует, для того чтобы сообщить компьютеру некоторую служебную информацию. Изменения на выводах Status регестрирует системный драйвер операционной системы. Он же проводит и ответные действия, для нас наблюдаемые в виде периодического изменения состояния других выводов. Тут уж ни чего не поделаешь. Я обычно, просто в начале работы с портом далаю замыкание какой-нибудь линии регистра Status на землю и жду примерно минуту, пока драйвер не “утихомирится”. После этого порт свободен, и новые операции над регистром Status не приводят к неконтролируемым процессам в порту.

В исходной статье было очень много весьма спорных утверждений и совершенно неграмотных обяъснений. Самые вопиющие “ляпы” я устранил, но по прежнему эта статья остается весьма “делитантской”.

Ссылка на основную публикацию