Введение
Параллельные интерфейсы характеризуются тем, что в них для передачи бит в слове используются отдельные сигнальные линии, и биты передаются одновременно. Параллельные интерфейсы используют логические уровни ТТЛ (транзисторно-транзисторной логики), что ограничивает длину кабеля из-за невысокой помехозащищенности ТТЛ-интерфейса. Гальваническая развязка отсутствует. Параллельные интерфейсы используют для подключения принтеров. Передача данных может быть как однонаправленной (Centronics), так и двунаправленной (Bitronics). Иногда параллельный интерфейс используют для связи между двумя компьютерами - получается сеть, "сделанная на коленке" (LapLink). Ниже будут рассмотрены протоколы интерфейсов Centronics, стандарт IEEE 1284, а также реализующие их порты PC.
Интерфейс Centronics и LPT-порт
Для подключения принтера по интерфейсу Centronics в PC был введен порт параллельного интерфейса - так возникло название LPT-порт (Line PrinTer - построчный принтер). Хотя сейчас через этот порт подключаются не только построчные принтеры, название "LPT" осталось.
Интерфейс Centronics
Понятие Centronics относится как к набору сигналов и протоколу взаимодействия, так и к 36-контактному разъему на принтерах. Назначение сигналов приведено в табл. 1. Интерфейс Centronics поддерживается принтерами с параллельным интерфейсом. Его отечественным аналогом является интерфейс ИРПР-М. Традиционный порт SPP (Standard Parallel Port) является однонаправленным портом, через который программно реализуется протокол обмена Centronics. Порт вырабатывает аппаратное прерывание по импульсу на входе Ack#. Сигналы порта выводятся на разъем DB-25S (розетка), установленный непосредственно на плате адаптера (или системной плате) или соединяемый с ней плоским шлейфом. Название и назначение сигналов разъема порта (табл. 2) соответствуют интерфейсу Centronics.
Таб. 1 . Назначение сигналов Centronics.
| Сигнал | I/O* | Контакт | Назначение |
| Strobe | I | 1 | Строб данных. Данные фиксируются по низкому уровню сигнала |
| Data [0:7] | I | 2-9 | Линии данных. Data 0 (контакт 2) - младший бит |
| Ack# | 0 | 10 | Acknowledge - импульс подтверждения приема байта (запрос на прием следующего). Может использоваться для формирования запроса прерывания |
| Busy | 0 | 11 | Занято. Прием данных возможен только при низком уровне сигнала |
| PaperEnd | 0 | 12 | Высокий уровень сигнализирует о конце бумаги |
| Select | 0 | 13 | Сигнализирует о включении принтера (обычноно в принтере соединяется резистором с цепью +5 В) |
| AutoLF# | I | 14 | Автоматический перевод строки. При низком уровне принтер, получив символ CR (Carriage Re turn - возврат каретки), автоматически выполняет и функцию LF (Line Feed - перевод строки) |
| Error | 0 | 32 | Ошибка: конец бумаги, состояние OFF-Line или внутренняя ошибка принтера |
| lnit# | I | 31 | Инициализация (сброс в режим параметров умолчания, возврат к началу строки) |
| Select ln# | 36 | Выбор принтера (низким уровнем). При высоком уровне принтер не воспринимает остальные сигналы интерфейса | |
| GND | - | 19-30, 33 | Общий провод интерфейса |
Рис. 1 . Передача данных по протоколу Centronics
Таб. 2 . Название и назначение сигналов разъема порта
| Контакт DB-25S | Номер провода в кабеле | Назначение | ||
| I/O* | Reg. Bit** | Сигнал | ||
| 1 | 1 | 0/1 | CR.O | Strobe |
| 2 | 3 | 0(1) | DR.0 | Data 0 |
| 3 | 5 | 0(1) | DR.1 | Data 1 |
| 4 | 7 | 0(1) | DR.2 | Data 2 |
| 5 | 9 | 0(1) | DR.3 | Data3 |
| 6 | 11 | 0(1) | DR.4 | Data 4 |
| 7 | 13 | 0(1) | DR.5 | Data 5 |
| 8 | 15 | 0(1) | DR.6 | Data 6 |
| 9 | 17 | 0(1) | DR.7 | Data 7 |
| 10 | 19 | 1*** | SR.6 | Ack# |
| 11 | 21 | 1 | SR.A | Busy |
| 12 | 23 | 1 | SR.5 | PaperEnd |
| 13 | 25 | 1 | SR.4 | Select |
| 14 | 2 | 0/1 | CR.1 | Auto LF# |
| 15 | 4 | 1 | SR.3 | Error* |
| 16 | 6 | 0/1 | CR.2 | lnit# |
| 17 | 8 | 0/1 | CR.3 | |