Рефераты. Техническая диагностика средств вычислительной техники

Поиск портов по базовому адресу предполагаемого порта производится следующей процедурой:

- в регистр DR контроллера порта выводится тестовый байт AAh или 55h;

- затем выполняется ввод с того же адреса;

- если считанный байт совпал с записанным, считается, что LPT-порт найден и его адрес помещается в область данных BIOS.

Обнаруженные порты инициализируются записью и съемом в их регистры управления сигнала Init#, а затем – записью значения С0h, соответствующего исходному состоянию сигналов интерфейса.

BIOS поддерживает до трех, или четырех LPT-портов прерыванием INT17, обеспечивающим связь по интерфейсу Centronics. Этим сервисом драйвер порта осуществляет по готовности, не используя аппаратных прерываний, инициализацию, опрос состояния интерфейса, принтера и – вывод символа.

Программное прерывание BIOS INT17h обеспечивает следующие функции:

1) 00h – вывод символа из регистра AL микропроцессора по протоколу Centronics. При этом выводимые данные помещаются в выходной регистр порта и, дождавшись готовности принтера (снятие сигнала BUSY), формируется строб данных Strobe#;

2) 01h – инициализация интерфейса и принтера (установка начальных уровней управляющих сигналов);

3) 02h – опрос состояния принтера, чтение его регистра состояния.

При вызове INT17, номер функции задается в регистре АН микропроцессора, номер порта – в регистре DX. При возврате после любой функции, регистр АН содержит код состояния: биты регистра RS [7:3] (причем биты 6 и 3 инвертированы) и в бите 0 – флаг тайм-аута, который устанавливается при неудачной попытке вывода, если сигнал BUSY не снимается в течение времени, определяемого для данного порта.

Аппаратный интерфейс LPT-портов.

Стандартный LPT-порт является однонаправленным, его сигналы выводятся из компьютера на 25-контактный разъем DB-25S (розетка), который устанавливается непосредственно на плате контроллера. Если же контроллер порта интегрирован непосредственно в системную плату компьютера, то разъем LPT-порта может располагаться или на системной плате, или на вставке задней стенки системного блока. В последнем случае, разъем порта на системной плате соединяется с разъемом на задней стенке плоским шлейфом.

Каждый LPT-порт использует свою линию аппаратного запроса прерывания IRQ7 или IRQ5, 8-битовую внешнюю шину данных, 5-битовую шину сигналов состояния и 4-битовую шину управляющих сигналов.

Понятие интерфейса Centronics относится как к набору сигналов и протоколу взаимодействия, так и к 36-контактному разъему, устанавливаемому на принтерах. Отечественный аналог интерфейса Centronics интерфейс ИРПР-М.

Назначение сигналов интерфейса Centronics и их распределение по разъему принтера приведено в таблице 1.11.

Таблица 1.11. Сигналы интерфейса Centronics.

Сигнал

Направление

Контакт

Назначение

Strobe#

выход

1

Строб данных.

Data [0:7]

выход

2-9

Линии данных. Data [0:7]. Контакт 2 – младший бит

Ack#

вход

10

Acknowledge – сигнал подтверждения приема байта, запрос на прием следующего. Может использоваться для формирования запроса прерывания.

Busy

вход

11

Занято. Прием данных возможен только при низком уровне сигнала

PaperEnd

выход

12

Высокий уровень сигнализирует о конце бумаги.

Select

выход

13

Сигнал о включении принтера.

AutoLF#

вход

14

Автоматический перевод строки. При низком уровне сигнала, принтер, получив символ CR (Carriage Return – возврат каретки), автоматически выполняет и функцию LF (Line Feed – перевод строки).

Error#

вход

32

Ошибка: конец бумаги, Off-Line (принтер не в связи с РС), или внутренняя ошибка принтера.

Init#

выход

31

Инициализация – сброс принтера в режим параметров по умолчанию, возврат головки к началу строки.

Slct In#

выход

36

Выборка принтера (низким уровнем сигнала). При высоком уровне сигнала принтер не воспринимает остальных сигналов интерфейса.

GND

-

19-30,33

Общий провод интерфейса.

Процедура вывода байта состоит из следующих шагов:

1) вывод байта в регистр данных,

2) опрос регистра состояния и, если терминал не готов, ожидание готовности устройства (принтера),

3) установка сигнала строба данных.

Для вывода одного байта требуется, по меньшей мере, 4–5 машинных операций ввода-вывода с регистрами порта, так что скорость обмена невысока, при значительной нагрузке микропроцессора. Стандартный порт удается разогнать до скоростей, порядка всего 100-150 Кбайт/сек, при полной загрузке процессора, что явно недостаточно для печати на лазерный принтер.

Недостатки стандартного порта частично устраняли новые типы портов, появившиеся в компьютерах семейства PS/2, но, не будучи стандартизованными, такие порты требовали от их производителей использования собственных специальных драйверов. В 1994 году был принят стандарт на параллельный интерфейс IEEE 1284, определяющий режимы работы SPP (стандартный), EPP – двунаправленный и ECP (Extended) – двунаправленный, с возможностью аппаратного сжатия данных по методу RLE, использования FIFO-буферов в контроллере порта и DMA системной платы. В современных машинах, с LPT-портом на системной плате, режим порта – SPP, EPP, ECP, или их комбинация, задается программно в BIOS SetUp.

Контрольные вопросы.

1. Какие базовые адреса может иметь LPT-порт?

2. Какова разрядность регистра данных LPT-порта?

3. Какие номера прерываний может использовать LPT-порт?

4. Как использовать LPT-порт для ввода данных?

5. Как использовать LPT-порт для ввода данных?

СОМ-порт.

Последовательный интерфейс для передачи данных в каждую сторону использует по одной отдельной линии данных, по которой данные передаются в последовательном коде. Последовательная передача данных может осуществляться в асинхронном или синхронном режимах.

При асинхронной передаче, каждому байту предшествует один или два стартовых бита, сигнализирующих приемнику о начале очередной посылки, за ним следуют биты данных и, возможно, бит паритета (контроля четности). Завершает посылку стоп-бит, гарантирующий определенную выдержку между соседними посылками. Старт-бит следующего байта может посылаться в любой момент времени после окончания стоп-бита, т.е. между передачами возможны паузы произвольной длительности. Старт-бит имеет всегда строго определенное значение логической 1 и обеспечивает простой механизм синхронизации приемника по сигналу от передатчика. Подразумевается, что и приемник и передатчик работают на одной скорости обмена, измеряемой в количестве передаваемых бит в секунду. Внутренний генератор синхронизации приемника использует счетчик-делитель опорной частоты, обнуляемый в момент приема старт-бита, и генерирует внутренние стробы, по которым приемник фиксирует последующие принимаемые биты. В идеале, эти стробы располагаются в середине битовых интервалов, что обеспечивает возможность приема битов и при некотором рассогласовании скоростей приемника и передатчика. Нетрудно просчитать, что при передаче 8 бит данных, контрольного и одного стоп-бита предельное рассогласование скоростей не может превышать 5%, но с учетом фазовых искажений (затянутых фронтов сигналов) допустимое отклонение скоростей значительно меньше, так что с ростом частоты обмена повышаются и требования к согласованности скоростей и частот работы приемников и передатчиков.

Приемник, получив сигнал о начале передачи, отвечает передатчику своим состоянием и, если приемник готов к приему, передатчик выдает старт-бит, приемник запускает свой генератор тактов и принимает, с этой частотой, байт данных. Естественно, частоты генераторов передатчика и приемника должны быть довольно строго одинаковыми, но скоростные характеристики линии передачи могут быть разными, в разных конфигурациях АПС, поэтому и частоты передач, определяемые контроллером порта, должны допускать разные значения. Эти значения стандартизованы, и в каждом сеансе связи, перед началом передачи первого байта, передатчик сообщает приемнику – на какой из стандартных частот, будет вестись данный сеанс связи.

Для асинхронного режима передачи принят ряд стандартных скоростей обмена: 50, 75, 110, 150, 300,600,1200, 2400, 4800, 9600, 19200, 38400, 57600, и 115200 бит/сек (не путать с Бод).

Бод – это единица измерения пропускной способности линии связи и приемо-передатчиков, выраженная в количестве переключений состояния линии в секунду, что характерно для недвоичного способа кодирования, а при двоичном способе передачи количество бод и бит/сек, могут отличаться в несколько раз. Так, за одну модуляцию (изменение состояния линии) при недвоичном кодировании, например, ДОФМ широко применяемом в современных модемах, может передаваться несколько бит, а при двоичной асинхронной передаче через СОМ-порты, за одну посылку передается 8 информационных бит, но, с учетом стартовых стоповых бит и бита паритета – до 13 бод.

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.