Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Комп'ютерний експеримент АЦП.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
483.33 Кб
Скачать

2.5 Режими роботи

Стандарт дозволяє використовувати інтерфейс в декількох режимах:

  • SPP (Standart Paralell Port) — односпрямований порт, повністю сумісний з інтерфейсом Centronics.

  • Nibble Mode — дозволяє організувати двонаправлений обмін даними в режимі SPP шляхом використання керуючих ліній (4 біт) для передачі даних від периферійного пристрою до контролера. Історично це був єдиний спосіб використовувати Centronics для двостороннього обміну даними.

  • Byte Mode — рідко використовуваний режим двостороннього обміну даними. Використовувався в деяких старих контролерах до прийняття стандарту IEEE 1284.

  • EPP (Enhanced Parallel Port) — розроблений компаніями Intel, Xircom та Zenith Data Systems — двонаправлений порт, зі швидкістю передачі даних до 2МБайт/сек. (1991)

  • ЕСР (Extended Capabilities Port) — розроблений компаніями Hewlett-Packard та Microsoft — на додаток з'явилися такі можливості, як наявність апаратного стиснення даних, наявність буфера і можливість роботи в режимі DMA.

2.6 Робочі регістри

Адаптер паралельного інтерфейсу є набором регістрів, розташованих в просторі введення / виводу. Регістри порту адресуються щодо базової адреси порту, стандартними значеннями якого є 3BCh, 378h і 278h. Порт має зовнішню 8-бітну шину даних, 5-бітну шину сигналів стану і 4-бітну шину керуючих сигналів.

Стандартний порт має три 8-бітових регістри, розташованих по сусідніх адресах у просторі введення / виводу, починаючи з базової адреси порту (BASE).

Data Register (DR) - регістр даних, адреса = BASE (в нашому випадку 378h). Дані, записані в порт, виводяться на вихідні лінії інтерфейсу. Дані, зчитані з цього регістра, залежно від схемотехніки адаптера, відповідають або раніше записаним даним, або сигналам на тих же лініях, що не завжди одне і те ж.

Status Register (SR) - регістр стану; являє собою 5-бітний порт введення сигналів стану принтера (біти SR.4-SR.7), адреса = BASE+1 (Якщо прийняти за базову адресу 378h, то адреса регістру стану буде, відповідно - 378h+1=379h).

Призначення біт регістра стану (у дужках дано номери контактів роз'єму):

SR. 7 - Busy - інверсні відображення стану лінії Busy (11): при низькому рівні на лінії встановлюється одиничне значення біта - дозвіл на виведення чергового байта.

SR.6 - Ack (Acknowledge) - відображення стану лінії Ack # (10).

SR.5 - РЕ (Paper End) - відображення стану лінії Paper End (12). Одиничне значення відповідає високому рівню лінії - сигналу про кінець паперу в принтері.

SR.4 - Select - відображення стану лінії Select (13). Одиничне значення відповідає високому рівню лінії - сигналу про включення принтера.

SR.3 - Error - відображення стану лінії Error (15). Нульове значення відповідає низькому рівню лінії - сигналу про будь-яку помилку принтера.

SR.2 - PIRQ - прапор переривання по сигналу Ackft (тільки для порту PS / 2). Біт обнуляється, якщо сигнал Ack # викликав апаратне переривання. Одиничне значення встановлюється по апаратному скиданню і після читання регістра стану.

SR [1: 0] - зарезервовані.

Control Register (CR) - регістр управління, адреса BASE +2 (378h+2 = 37Ah). Як і регістр даних, цей 4-бітний порт виведення допускає запис і читання (біти 0-3), але його вихідний буфер звичайно має тип "відкритий колектор". Це дозволяє коректно використовувати лінії даного регістра як вхідні при програмуванні в високий рівень. Біти 0, 1, 3 інвертуються.

Призначення біт регістра керування:

CR [7:6] - зарезервовані.

CR.5 - Direction - біт управління напрямом передачі. Запис одиниці переводить порт даних в режим введення. При читанні стан біта не визначено.

CR.4 - AcklntEn (Ack Interrupt Enable) - одиничне значення дозволяє переривання по спаду сигналу на лінії Ack # - сигнал запиту наступного байта.

CR.3 - Select In - одиничне значення біта відповідає низькому рівню на виході Select ln # (17) - сигналу, дозволяючим роботу принтера по інтерфейсу Centronics.

CR.2 - Init - нульове значення біта відповідає низькому рівню на виході - сигналу апаратного скидання принтера.

CR. 1 - Auto LF - одиничне значення біта відповідає низькому рівню на виході Auto LF # (14) - сигналу на автоматичний перехід рядка (LF - Line Feed) по при йому байта повернення каретки (CR). Іноді сигнал і біт називають AutoFD або AutoFDXT.

CR.O - Strobe - одиничне значення біта відповідає низькому рівню на виході Strobeft (1) - сигналу стробування вихідних даних.