AFON // радиотехник affonya@mail.ru
← на главную

BUS // параллельный порт

LPT ECP парралельный порт

На этой странице размещенны описания парралельного LPT порта которым очень легко управлять и у которого скорость может доходить до 2 Мбит в секунду. Для очень медленных процессов эта незаменимаю штука потому что очень простая.Для того чтобы работать с этим портом необходимо только его инециолизировать то есть в регистр с адррессом 37a записать H"c4" после этого через порт можено передовать информацию читать и записывать. По адрессу 37c любые данные. Еще хочу сказать одну вещь то что различные порты отличаются у разных компьютеров и надо не забывать что некоторые китайские производители забывают ставить поддягивающие резисторы. И это может послужить некоторой ошибкой если вы будите ставить последовательно выходам резисторы!!! А так в принципе все хорошо и нормально работает. Естественно програмки для записи и четения пишуться либо под XP либо 98 windows. и поэтому необходимо это учитывать. Если работаем с 98 то используем прямое обращение к портам inport() или outport().

А если работаем в XP то необходимо поставить драйвер Userport и после открыть необходимые для работы порты и использовать теже функции inport() и outport();

Описание на асемблере outport()

_asm

{

mov edx, port

mov al, data

out dx, al

}

Описание на асемблере inport()

_asm

{

mov edx, port

in al, dx

mov al,data

}

Где port это адресс порта data это данные порта. Эта ассемблерная вставка считывает даные 8 бит а для того чтобы считать 16 бит необходимо заменить регистр al на ax. А чтобы читать 32 разряда неоходимо заменить al на eax и это будет выглядеть следующим образом: Описание на асемблере outport()

_asm

{

mov edx, port

mov ax, data

out dx, ax

}

Описание на асемблере inport()

_asm

{

mov edx, port

in ax, dx

mov ax,data

}

Далее приводяться описания ECP порта в разных режимах которые можно скачать!!!

Надеюсь эти описания помогут вам изучить LPT порт для того чтобы сделать на основе него какое либо интересное устройство которое помежет вам в дальнейшем освоить болле сложные интерфейсы !!!

Подробный справочник

Режим ECP

ECP (Extended Capabilities Port) — расширенный режим параллельного порта LPT, ориентированный на высокую пропускную способность при работе с принтерами и сканерами. В отличие от EPP, ECP использует буфер FIFO, передачу через DMA (без постоянного участия процессора) и аппаратное сжатие RLE для повторяющихся байтов.

Чем отличается от EPP

EPP оптимизирован под быстрый обмен «регистр-за-регистром» с приборами, где важна малая задержка одиночной операции. ECP — под потоковую передачу больших объёмов (печать, сканирование), где выигрывают буферизация и DMA. В BIOS порт обычно можно переключить между SPP, EPP и ECP или их комбинацией.

Распиновка

Физически это тот же разъём DB25 с линиями данных D0–D7, управляющими и статусными сигналами. Полную распиновку смотри в справочнике распиновок, а быстрый двунаправленный режим — в разделе LPT · EPP.

Применение

ECP уместен, когда через порт идёт большой поток данных. Для самодельных приборов и программаторов чаще выбирают EPP или базовый SPP. Управление портом на микроконтроллере — в разделах PIC и AVR.

О параллельном порте LPT в режиме ECP

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

Возможности режима ECP

Режим ECP использует аппаратный буфер FIFO и поддерживает сжатие данных методом RLE, что повышает скорость обмена с принтерами и сканерами. Для работы с ECP порт настраивается через регистры расширенного управления.

TOOLS//

Инструменты по теме

01