Интернет-журнал "Домашняя лаборатория", 2008 №2
Шрифт:
— ЕСР (Extended Capability Port) Mode — двунаправленный обмен с возможностью аппаратного сжатия данных по методу RLE (Run Length Encoding), использования FIFO-буферов и DMA. Управляющие сигналы интерфейса генерируются аппаратно. Эффективен для принтеров и сканеров.
В современных машинах с LPT-портом на системной плате режим порта — SPP, ЕРР, ЕСР или их комбинация задается в BIOS Setup. Режим Compatibility Mode полностью соответствует SPP и часто установлен по умолчанию. Все остальные режимы расширяют функциональные возможности интерфейса и повышают
Физический и электрический интерфейс. Стандарт IEEE 1284 определяет физические характеристики приемников и передатчиков сигналов. IEEE 1284 предусматривает два уровня интерфейсной совместимости: первый уровень — для уст ройств, не требующих высоких скоростей обмена, но использующих возможность смены направления передачи данных; второй уровень — устройства, работающие в расширенных режимах, с высокими скоростями и длинными кабелями. Требования к передатчикам приведены в таблице 3, для приемников — в таблице 4.
Таблица 3. Требования стандарта IEEE 1284 к передатчикам
Требование • Значение
Диапазон уровней сигналов без нагрузки… -0.5…+5.5 В
Уровень "1" при токе нагрузки 14 мА, не менее… +2.4 В
Уровень "0" при токе нагрузки 14 мА, не более… + 0.4 В
Выходной импеданс, измеренный на разъеме… 50±5 Ом
Скорость нарастания/спада импульса (должна находиться в указанных пределах)… 0.05-0.4 В/нс
Таблица 3. Требования стандарта IEEE 1284 к приемникам
Требование • Значение
Допустимые пиковые значения сигналов, выдерживаемые без ошибок в работе, В… -2.0 — +7.0
Порог срабатывания "1", не выше, В… 2.0
Порог срабатывания "0", не ниже, В… 0.8
Гистерезис приемника (пределы), В… 0.2–1.2
Входной ток (втекающий и вытекающий), не более, мкА… 20
Входная емкость, не более, пФ… 50
Примечание: Входные линии соединяются с шиной питания резистором 1.2 кОм.
Стандарт IEEE 1284 определяет три типа используемых разъемов: A (DB-25S), В (Centronics-36), С (новый малогабаритный 36-контактный разъем). Интерфейсные кабели могут иметь от 18 до 25 проводников (в зависимости от числа проводников GND). Не предъявляется жестких требований к экранировке и прочим параметрам, однако, такие кабели могут работать только на низких скоростях при длине не более 2 метров. Стандарт IEEE 1284 для улучшенных кабелей определяет следующие параметры:
— Все сигнальные проводники должны быть перевиты с отдельными обратными (общими) проводами;
— Каждая пара должна иметь импеданс 62±6 Ом в диапазоне частот 4-16 МГц;
— Уровень перекрестных помех не должен превышать 10 %;
— Кабель должен иметь экран, покрывающий не менее 85 процентов внешней поверхности. На концах кабеля экран должен быть окольцован и соединен с контактом разъема GND.
Кабели, удовлетворяющие этим
требованиям, маркируются как "IEEE Std 1284–1994 Compliant". Они могут иметь длину до 10 метров.Работа с параллельным портом на низком уровне (т. е. на уровне прямого обращения к контроллеру порта) применяется при решении различного круга задач по обмену информацией с нестандартными устройствами, для написания драйверов принтеров и ряда других задач. Прямая работа с контроллером позволяет реализовать любой протокол обмена с устройством и использовать линии порта по своему усмотрению.
Контроллер порта расположен в адресном пространстве устройств ввода-вывода и обращение к нему производится посредством команд IN и OUT ассемблера. Или при помощи специальных команд компиляторов программ, написанных на языках высокого уровня. Информацию о портах LPT1 — LPT3 можно получить, прочитав переменные BIOS, приведенные в табл. 5.
BIOS ищет порты по адресам Base: 3BCh, 378h, 278h. Порт LPT4 BIOS найти не может:
— 378h — параллельный адаптер LPT1;
— 278h — параллельный адаптер LPT2;
— 3BCh — параллельный адаптер LPT3;
Стандартный порт имеет три 8-битных регистра, расположенных по соседним адресам, начиная с базового (Base) адреса. Перечень данных регистров приведен в табл. 6.
Примечание. W-R — доступные операции (W — запись, R — чтение, W/R — запись/чтение).
Регистр данных (DR). Записанные в этот регистр данные выводятся на выходные линии интерфейса D0-D7. Результат чтения этого регистра зависит от схемотехники адаптера, и соответствуют либо записанным ранее данным, либо сигналам на линиях D0-D7, что не всегда одно и тоже. При стандартном включении справедлив первый вариант — читаемые данные равны ранее записанным.
Регистр состояния (SR). Представляет собой 5-ти битный порт ввода, на который заведены сигналы состояния от внешнего устройства. Допускает только чтение. Назначение битов данного регистра приведены в табл. 7.
Регистр управления (CR). Регистр управления представляет собой 4-х битный порт вывода, допускающий чтение и запись. Биты 0, 1, 3 инвертируются, т. е. "1" в данных битах регистра управления соответствует "0" на соответствующих линиях порта. Назначение битов регистра управления приведены в табл. 8. Бит 5 используется только двунаправленными портами.
ПРОГРАММИРОВАНИЕ ИНТЕРФЕЙСА
Для разработки прикладных программ необходимо выбрать язык программирования. Если требуется несложная, быстрая и компактная программа, которая не содержит сложных вычислительных операций, то для ее написания лучше выбирать язык низкого уровня (язык ассемблера). Язык ассемблера относится к группе машинно-ориентированных языков, т. е. каждому семейству микропроцессоров соответствует свой язык.