Главная    Почта    Новости    Каталог    Одноклассники    Погода    Работа    Игры     Рефераты     Карты
  
по Казнету new!
по каталогу
в рефератах

Параллельный интерфейс: LPT-порт



 Другие рефераты
Пакет MathCAD Пакеты математических расчетов (работа в Derive) Паскаль (практическое использование) Передача данных в компьютерных сетях

Параллельный интерфейс: LPT-порт
Порт параллельного интерфейса был  введен  в  PC  для  подключения  принтера
—LP'T-порт (Line PrinTer — построчный принтер).
Адаптер  параллельного  интерфейса  представляет  собой   набор   регистров,
расположенных  в  пространстве  ввода/вывода.  Регистры   порта   адресуются
относительно  базового  адреса  порта,  стандартными   значениями   которого
являются 386h, 378h и 278h. Порт имеет  внешнюю  8-битную  шину  данных,  5-
битную шину сигналов состояния и 4-битную шину управляющих сигналов.
BIOS поддерживает  до  четырех   LPT-портов  (LPT1-LPT4)  своим  сервисом  —
прерыванием  INT  17h,  обеспечивающим  через  них  связь  с  принтерами  по
интерфейсу  Centronics.  Этим  сервисом  BIOS  осуществляет  вывод  символа,
инициализацию интерфейса и принтера, а также опрос состояния принтера.
Интерфейс Centronics
Понятие  Centronics  относится   как   к   набору   сигналов   и   протоколу
взаимодействия,  так  и  к  36-контактному  разъему,   устанавливаемому   на
принтерах. Назначение сигналов приведено в табл. 1.
                                                                  Таблица 1.
                        Сигналы интерфейса Centronics

|Сигна|I/O*|Контакт    |Назначение                                    |
|л    |    |           |                                              |
|Strob|I   |1          |Строб данных. Данные фиксируются по низкому   |
|e    |    |           |уровню сигнала                                |
|Data |I   |2-9        |Линии данных. Data 0 (контакт 2) — младший бит|
|[0:7]|    |           |                                              |
|Actt |0   |10         |Acknowledge — импульс подтверждения приема    |
|     |    |           |байта (запрос на прием следующего). Может     |
|     |    |           |использоваться для формирования запроса       |
|     |    |           |прерывания                                    |
|Busy |0   |11         |Занято. Прием данных возможен только при      |
|     |    |           |низком уровне сигнала                         |
|Paper|0   |12         |Высокий уровень сигнализирует о конце бумаги  |
|End  |    |           |                                              |
|Selec|0   |13         |Сигнализирует о включении принтера            |
|t    |    |           |                                              |
|Auto |I   |14         |Автоматический перевод строки.                |
|LF#  |    |           |                                              |
|Еггог|0   |32         |Ошибка: конец бумаги, состояние OFF-Line или  |
|й    |    |           |внутренняя ошибка принтера                    |
|Imt# |I   |31         |Инициализация                                 |
|Slot |I   |36         |Выбор принтера (низким уровнем). При высоком  |
|In#  |    |           |уровне принтер не воспринимает остальные      |
|     |    |           |сигналы интерфейса                            |
|GND  |-   |19-30 33   |Общий провод интерфейса                       |
|* I/O|Зада|Направление|(вход/выход) применительно к принтеру.        |
|     |ет  |           |                                              |


Интерфейс Centronics поддерживается большинством  принтеров  с  параллельным
интерфейсом, его отечественным аналогом является интерфейс ИРПР-М.
                            Традиционный LPT-порт
Традиционный порт SPP (Standard  Parallel  Port)  является  однонаправленным
портом, на базе которого программно реализуется протокол обмена  Centronics.
Порт обеспечивает возможность вырабатывания запроса  аппаратного  прерывания
по импульсу  на  входе  АСК#.  Сигналы  порта  выводятся  на  разъем  DB-25S
(розетка), установленный непосредственно на плате  адаптера  (или  системной
плате)  или  соединяемый  с  ней  плоским  шлейфом.  Название  и  назначение
сигналов разъема порта (табл. 2) соответствуют интерфейсу Centronics.
                                                                  Таблица 2.
                        Разъем стандартного LPT-порта
|Контакт     |Провод      |Назначение                                  |
|DB-25S      |шлейфа      |                                            |
|            |            |I/O*           |Reg.Bit**    |Сигнал       |
|1           |1           |0/1            |CR: 0       |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         |Data 3       |
|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          |I              |SR: 6        |Ack#         |
|11          |21          |I              |SR: 7       |Busy         |
|12          |23          |I              |SR: 5        |PaperEnd     |
|13          |25          |I              |SR: 4        |Select       |
|14          |2           |0/1            |CR: 1       |Auto LF#     |
|15          |4           |I              |SR: 3        |Error#       |
|16          |6           |0/1            |CR: 2        |Init#        |
|17          |8           |0/1            |CR:3        |Select In#   |
|18-25       |10, 12, 14, |18, 20, 22, 24,|-            |-            |
|            |16          |26             |             |             |

*  I/O  задает  направление  передачи  (вход/выход)   сигнала   порта;   0/I
обозначает выходные линии,  состояние  которых  считывается  при  чтении  из
соответствующих портов вывода.
**  Символом  «»   отмечены   инвертированные   сигналы   (1   в   регистре
соответствует низкому уровню линии).
*** Вход Ack# соединен резистором (10 кОм) с питанием +5 В.
Стандартный порт имеет три  8-битных  регистра,  расположенных  по  соседним
адресам  в  пространстве  ввода/вывода,  начиная  с  базового  адреса  порта
(BASE).
Data Register (DR) — регистр данных, адрес= BASE. Данные, записанные в  этот
порт, выводятся на выходные линии интерфейса.  Данные,  считанные  из  этого
регистра, в зависимости от схемотехники адаптера  соответствуют  либо  ранее
записанным данным, либо сигналам на тех же линиях.
Status Register (SR) —  регистр  состояния,  представляющий  собой  5-битный
порт ввода сигналов состояния принтера (биты SR.4-SR.7), адрес= BASE+1.  Бит
SR.7  инвертируется  —  низкому  уровню  сигнала   соответствует   единичное
значению бита в регистре, и наоборот.
Назначение  бит  регистра  состояния  (в  скобках  даны   номера   контактов
разъема):
SR.7—Busy — инверсные отображения состояния линии Busy (11);
SR.6 —АСК (Acknowledge) — отображения состояния линии Ack# (10).
SR.5 —РЕ (Paper End) — отображения состояния линии Paper End (12).
SR.4—Select — отображения состояния линии Select  (13).  Единичное  значение
соответствует cигналу о включении принтера.
SR.3—Error — отображения состояния линии Error (15).
SR.2 — PIRQ — флаг прерывания по сигналу Ack# (только для порта  PS/2).  Бит
обнуляется,  если  сигнал  Ack#  вызвал  аппаратное  прерывание.   Единичное
значение устанавливается по  аппаратному  сбросу  и  после  чтения  регистра
состояния.
SR[1:0] — зарезервированы.
Control Register (CR) — регистр  управления,  адрес=ВА5Е+2.  Как  и  регистр
данных, этот 4-битный порт вывода допускает запись и чтение (биты  0-3),  но
его выходной буфер обычно имеет тип открытый коллектор. Это позволяет  более
корректно   использовать   линии   данного   регистра   как   входные    при
программировании их  в  высокий  уровень.  Биты  О,  1,  3  инвертируются  —
единичному значению в  регистре  соответствует  низкий  уровень  сигнала,  и
наоборот.
Назначение бит регистра управления:
CR[7:6] — зарезервированы.
CR.5 — Direction — бит управления направлением передачи (только  для  портов
PS/2). Запись единицы переводит порт данных в режим ввода.
CR.4  —ACKINTEN  (Ack  Interrupt  Enable)  —  единичное  значение  разрешает
прерывание по спаду сигнала на  линии  Ackff  —  сигнал  запроса  следующего
байта.
CR.3 — Select In — единичное значение бита соответствует низкому  уровню  на
выходе Selecting (17) — сигналу, разрешающему работу принтера по  интерфейсу
Centronics.
CR.2 — Init — нулевое значение бита соответствует низкому уровню  на  выходе
Imt# (16) — сигнал аппаратного сброса принтера.
CR.1 — Auto LF — единичное значение бита  соответствует  низкому  уровню  на
выходе Auto LF# (14) — сигналу на автоматический перевод строки (LF  —  Line
Feed) по приему байта возврата каретки (CR — Carriage Return).
CR.O —Strobe — единичное  значение  бита  соответствует  низкому  уровню  на
выходе Strobeff (1) — сигналу стробирования выходных данных.
Запрос аппаратного прерывания  (обычно  IRQ7  или  IRQ5)  вырабатывается  по
отрицательному перепаду сигнала на выводе 10 разъема интерфейса  (АСК#)  при
установке CR.4=1.  Прерывание  вырабатывается,  когда  принтер  подтверждает
прием предыдущего байта.
Процедура вывода байта  по  интерфейсу  Centronics  через  стандартный  порт
включает следующие шаги (в скобках  приведено  требуемое  количество  шинных
операций процессора):
Вывод байта в регистр данных (1 цикл IOWR#).
Ввод из регистра состояния и проверка  готовности  устройства  (бит  SR.7  —
сигнал BUSY).
По получении готовности выводом в регистр управления  устанавливается  строб
данных, а следующим выводом строб снимается (2 цикла lOWRff).
Ста
12345След.
скачать работу


 Другие рефераты
Моделирование на GPSS
Царица Софья
Эксперимент как средство оценки качества теоретического знания
Взаимодействие наук


 

Отправка СМС бесплатно

На правах рекламы


ZERO.kz
 
Модератор сайта RESURS.KZ