Параллельные и последовательные порты и их особенности работы. Последовательный порт

28. Параллельный и последовательный порты.
Параллельный и последовательный порты используются не только для
подключения принтера и модема, для которых были в свое время
разработаны. Простота исполнения и отработанный протокол приемапередачи данных сделали их незаменимыми для подключения к ПЭВМ
различных низкоскоростных устройств, применяющихся в промышленности
и научных исследованиях.
Параллельный порт (интерфейс Centronics).
Основным назначением интерфейса Centronics (аналог - ИРПР-М)
является подключение к компьютеру принтеров различных типов.
Поэтому распределение контактов разъема, назначение сигналов,
программные средства управления интерфейсом ориентированы именно на
это использование.
В то же время с помощью данного интерфейса можно подключать к
компьютеру и другие специально разработанные внешние устройства.
Скорость обмена по интерфейсу Centronics – 129-200 кБ/с.
Стандартный параллельный порт предназначен только для
односторонней передачи информации от ПЭВМ к принтеру.
Усовершенствованный порт ЕРР (Enhanced Parallel Port) является
двунаправленным, позволяет подключать до 64-х устройств и обеспечивает
скорость передачи данных с использованием ПДП до 2 мБ/с.
Расширенный порт ECP (Extended Capability Port) позволяет подключить
до 128 устройств и поддерживает режим компрессии (сжатия) данных.

Схема контроллера параллельного порта i8255A.
А1
А2
IOR
IOW
RESET
A7, A15
Устройство
управления
А
БР Канал данных В
В
БР Канал данных С
С
Внешнее устройство
Буфер
управления
БР Канал данных А
Внутренняя шина данных
Системная шина
Буфер данных
Сигналы управления
Контроллер параллельного обмена представляет собой 3-хканальный
байтовый интерфейс и позволяет организовать обмен данными в трех
режимах:
Режим 0 – синхронный однонаправленный ввод/вывод (4 порта А, В, С1, С2).
Режим 1 – асинхронный однонаправленный ввод/вывод (2 порта А и В).
Режим 2 – асинхронный двунаправленный ввод/вывод (1 порт А).
Программирование режимов работы каналов контроллера
осуществляется передачей в буфер управления соответствующего кода.

Сигналы Centronics имеют следующее назначение:
D0...D7 - 8-разрядная шина данных для передачи из компьютера в принтер.
-STROBE - сигнал стробирования (сопровождения) данных.
-АСК - сигнал подтверждения принятия данных и готовности принтера.
BUSY - сигнал занятости принтера обработкой полученных данных и
неготовности принять следующие данные.
-AUTO FD - сигнал автоматического перевода строки (каретки).
РЕ - сигнал конца бумаги (режим ожидания).
SLCT - сигнал готовности приемника (принтера).
-SLCT IN - сигнал принтеру о том, что последует передача данных.
-ERROR - сигнал ошибки принтера.
-INIT - сигнал инициализации (сброса) принтера и очистки буфера печати.
Контакт разъема компьютера
Цепь
I/O
Контакт разъема принтера
1
-STROBE
О
1
2 … 9
DO … D7
О
2 … 9
10
-АСК
I
10
11
BUSY
I
11
12
РЕ
I
12
13
SLCT
I
13
14
-AUTOFD
О
14
15
-ERROR
I
32
16
-INIT
О
31
17
-SLCT IN
О
36
18...25
GND
-
16, 17, 19...30, 33

Формирование и прием сигналов интерфейса Centronics производится
путем записи и чтения выделенных для него портов ввода/вывода.
В компьютере может использоваться три порта Centronics:
LPT1 (порт 378h, IRQ5), LPT2 (порт 278h, IRQ7) и LPT3 (порт 3ВСh).
Базовый адрес порта используется для передачи принтеру байта данных.
Установленные на линиях данные можно считать из этого же порта в ПЭВМ.
Временная диаграмма цикла передачи данных по интерфейсу Centronics.
D0 … D7
>500
- STROBE
BUSY
- ACK
>500
>500
наносекунд
>2500 наносекунд
Перед началом передачи данных контролируется снятие сигналов BUSY
и ASK. Затем данные выставляются на шину и формируется сигнал STROB.
За это время принтер должен успеть принять данные и выставить сигнал
BUSY, а затем и ASK.
Максимальная длина соединительного кабеля – 1,8 метра.
В настоящее время стандарты параллельного порта ЕРР и ЕСР
включены в стандарт IEEE 1284 с добавлением еще двух режимов обмена
данными: байтового и полубайтового.

Последовательный порт (Интерфейс RS232C).
Интерфейс RS-232C предназначен для подключения к компьютеру
стандартных внешних устройств (принтера, сканера, модема, мыши и т.д.),
а также для связи компьютеров между собой.
Основными преимуществами использования RS-232C по сравнению с
Centronics являются возможность передачи на значительно большие
расстояния и гораздо более простой соединительный кабель.
В то же время работать с ним несколько сложнее: данные в RS-232C
передаются в последовательном коде побайтно, а каждый байт обрамляется
стартовым и стоповыми битами.
Формат передаваемых данных последовательного порта:
отсутствие передачи
«1»
«0»
Стартовый бит
8 бит
данных
стоповые биты
бит четности
Данные могут передаваться как в одну (полудуплексный режим), так и в
обе стороны (дуплексный режим).
Обмен по интерфейсу RS-232C осуществляется по специально
выделенным для этого последовательным портам:
СОМ1 (адреса 3F8h...3FFh, прерывание IRQ4),
COM2 (адреса 2F8h...2FFh, прерывание IRQ3),
COM3 (адреса 3E8h...3EFh, прерывание IRQ10),
COM4 (адреса 2E8h...2EFh, прерывание IRQ11).

Схема контроллера последовательного порта i8250.
мультиплексор демультиплексор
Буфер
1
управления
Буфер
2
управления
Буфер
3
управления
Буфер
4
управления
Буфер
5
управления
Буфер
6
управления
RESET
IRQ
Устройство управления
Битовый
счетчик
Схема кодирования –
декодирования пакета
Генератор
синхросигнала
ТхD
RxD
CLK
Внешнее устройство
Системная шина
Буфер данных
Сигналы управления
В состав ПЭВМ могут входить до четырех последовательных портов,
работающих в стандарте RS-232С (отечественный аналог - стык С2).
Каждое из устройств RS-232С представляет собой самостоятельный
контроллер i8250, оснащенный 25- или 9- штырьковым разъемом.
Контроллер порта RS-232С является полностью программируемым
Устройством.
Ему можно задать следующие параметры обмена: количество битов
данных и стоп-битов, вид четности и скорость обмена в бодах (бит/с).

Назначение сигналов обращений:
FG - защитное заземление (экран).
-TxD - данные, передаваемые компьютером в последовательном коде.
-RxD - данные, принимаемые компьютером в последовательном коде.
RTS - сигнал запроса передачи. Активен во все время передачи.
CTS - сигнал сброса (очистки) для передачи. Активен во все время
передачи. Говорит о готовности приемника.
DSR - готовность данных. Используется для задания режима модема.
SG - сигнальное заземление, нулевой провод.
DCD - обнаружение несущей данных (принимаемого сигнала).
DTR - готовность выходных данных.
RI - индикатор вызова. Говорит о приеме модемом сигнала вызова по
телефонной сети.
Компьютер обычно имеет
9-контактный (DB9P) или
25-контактный (DB25P)
разъем для подключения
интерфейса RS-232C.
Назначение контактов
разъема приведено в
таблице
сигнал
25-контактный разъем
9-контактный разъем
I/O
FG
1
-
-
-TxD
2
3
О
-RxD
3
2
I
RTS
4
7
О
CTS
5
8
I
DSR
6
6
I
SG
7
5
-
DCD
8
1
I
DTR
20
4
О
RI
22
9
I

Конкретные форматы обращений по этим портам можно найти в
описаниях микросхем контроллеров последовательного обмена UART
(Universal Asynchronous Receiver/ Transmitter), например, для i8250.
Наиболее часто используются трех- или четырехпроводная связь (для
двунаправленной передачи).
Для двухпроводной линии связи в случае только передачи из
компьютера во внешнее устройство используются сигналы SG и TxD.
Все 10 сигналов интерфейса задействуются только при соединении
компьютера с модемом.
компьютер
Схема 4-х проводной
линии связи для
интерфейса RS232C
TxD
RxD
RTS
CTS
DSR
DCD
DTR
RI
SG
FG
внешнее устройство
TxD
RxD
RTS
CTS
DSR
DCD
DTR
RI
SG
FG
Примечание: тактовые частоты приемника и передатчика должны быть
одинаковыми (расхождение – не более 10%) для этого скорость передатчика
(ПЭВМ) может выбираться из ряда: 150, 300, 600, 1200, … 57600, 115200 бит/с.

29.Подсистема ввода-вывода.
Назначение, структура и задачи BIOS.
BIOS (Basic Input Output System) – часть программного обеспечения
ПЭВМ, содержащая управление адаптерами внешних устройств, экранными
операциями, тестирование, а затем начальную загрузку OS.
BOIS обеспечивает стандартный интерфейс, поддерживающий переносимость OS для ПЭВМ с совместимыми процессорами.
BOIS состоит из основных компонент:
1. POST– процедуры проверки системных устройств и их ресурсов.
2. ROM-Scan – программа сканирования ОЗУ.
3. SETAP-программный интерфейс просмотра и корректировки констант.
4. Константы BIOS в CMOS, таблица 256-ти символов ASCII 8х8.
Все адреса констант документированы и должны сохраняться в
последующих версиях BIOS для данной системной платы.
Компоненты BOIS записаны в специальной ПЗУ на системной плате
объемом 64 кБ и обычно рассматриваются, как неотъемлемая часть ПЭВМ,
встраиваемая в адресное пространство ОЗУ с адреса F000:0000.
Основной принцип организации системы ввода/вывода:
ЦПУ и ОЗУ образуют ядро ПЭВМ, а различные периферийные
устройства, к которым можно отнести любое другое устройство, которое не
входит в состав ядра ПЭВМ, сопрягаются с ядром системы с помощью
интерфейсов (совокупности шин, сигналов, электрических схем, протоколов
передачи данных и команд), входящих в состав ядра OS для организации
обмена информацией.

Структура подсистемы POST.
Состояние процессора после включения питания предопределено –
EFLAGS = 00000002h; EIP = 0000FFF0h; CS = 0F000h; PE(CR0) = 0.
по этому адресу находится команда JMP перехода на процедуру POST (Power
On Self Test) самотестирования и инициализации базовых устройств ПЭВМ:
Ввод константы инициализации в порт устройства n
Чтение байта статуса устройства n
Статус устройства n
соответствует данным CMOS
нет
Подача звукового сигнала,
вывод признака ошибки
инициализации устройства n
да
……….
Аварийное завершение
процедуры POST
Процедура сканирования
(верификации) оперативной памяти
Есть ошибки сканирования
нет
да
вывод признака
ошибки
сканирования
оперативной памяти
Передача управления на начало кода загрузки операционной системы

Основные функции подсистемы POST.
Процедуры POST служат для пуска самотестирования устройств на
системной плате, сравнения их статуса с данными CMOS и инициализации:
- каналы системного интервального таймера (слышен гудок),
- контроллер прерываний,
- контроллер прямого доступа,
- контроллер клавиатуры (загораются индикаторы на клавиатуре),
- контроллер памяти и т.д.,
затем инициализируются процедуры самотестирования устройств, имеющих
собственную BIOS:
- видеоконтроллер (на мониторе появляется первое сообщение),
- контроллеры дисковых накопителей (появляется сообщение),
- контроллер USB (клавиатура или мышь USB становятся активными)
- звуковой адаптер,
- сетевой адаптер и т.д.
Выполняется сканирование оперативной памяти (отображается на мониторе)
После успешного завершения процедур тестирования осуществляется
поиск boot-устройств, содержащих в буфере данных байт 80h (1000000), т.е.
неисполняемую команду, используемую в данном контексте POST для
подтверждения активности устройства загрузки OS.
Приоритет загрузочных устройств определяется в SETUP CMOS.
При выполнении POST могут генерироваться сообщения об ошибках.
Описания кодов ошибок можно найти по адресу: www.earthweb.com
или http://burks.bton.ac.uk/burks/pcinfo/hardware/bios_sg/bios_sg.htm

Доступ к переменным и константам BIOS.
Осуществляется через меню SETUP BIOS, доступное в начальные
моменты загрузки BIOS с помощью клавиш, указанных в сообщениях.
Меню SETUP состоит из основных разделов:
1. Стандартные переменные: дата, время, параметры ОЗУ и накопителей.
2. Дополнительные переменные и установленные модули программного
обеспечения BIOS для тестирования аппаратных средств, устройств ядра
ПЭВМ и ближайшего окружения.
3. Параметры остальных устройств, интегрированных в состав системной
(материнской) платы ПЭВМ и варианты распределения ресурсов (слотов
расширений шин, прерываний и каналов прямого доступа).
Здесь же определяется порядок опроса периферийных устройств,
которые могут содержать загрузочные модули операционных систем.
4. Параметры интерфейсов устройств, подключаемых к системной плате,
определяющих варианты энергосбережения.
5. Размеры констант, определяющих параметры центрального процессора
(частота, напряжение энергопитания ядра центрального процессора и ОЗУ), а
также их предельные величины для сигнализации или отключения.
6. Набор параметров BIOS, загружаемый по умолчанию (в случае ошибок
ручного набора параметров пользователем).
7. Ввод пароля для входа в редактор переменных – SETUP BIOS.
8. Ввод пароля для продолжения загрузки BIOS и выполнения POSTпроцедур после включения ПЭВМ (пользовательский пароль).
Значение паролей может быть снято системным обнулением BIOS.

Карта ввода / вывода.
0000 – 00FF – 256 8-разрядных портов предназначены для устройств,
расположенных на системной (материнской) плате ПЭВМ,
0100 – 03FF – 768 8-разрядных портов отведены для контроллеров
периферийных устройств, подключаемых к шинам системной платы ПЭВМ.
Внутренние устройства
Периферийные устройства
Диапазон Наименование устройства Диапазон
000 - 01F
Контроллер ПДП №1
Наименование устройства
3B0 – 3DF VGA
020 – 03F Контроллер ПКП №1
378 – 37B LPT 1
040 – 05F Интервальный таймер
37C – 37F LPT 2
060 – 06F Контроллер клавиатуры
278 – 27B LPT 3
070 – 07F Часы CMOS и константы
3F0 – 3F7 FDD
Диагностический регистр
3F8 – 3FF COM №1
081 – 08F Контроллер страниц ПДП
2F8 – 2FF COM №2
0A0 – 0BF Контроллер ПКП №2
3E8 – 3EF COM №3
0C0 – 0DF Контроллер ПДП №2
2E8 – 2EF COM №4
080
F000 – FFFF – 4096 дополнительных 8-разрядных портов, отведенных
для различных виртуальных устройств, подключаемых к внешним шинам
(USB, mini USB, SCSI, eSATA, HDD IDE ATA/ATAPI, PCI Express и т.д.).

Функции BIOS при работе с портами
Для прямого обращения ЦПУ к портам ввода/вывода в системе команд
предусмотрено всего 2 команды: IN и OUT.
Но сам процесс обмена данными с периферийными устройствами сложен
и должен учитывать ширину порта (порядок опроса нескольких 8-ми
разрядных портов) и протокол обмена, определяющий порядок оценки
готовности этих устройств к обмену данными по той или иной шине, а также
свойства самой шины.
По этой причине в OS Windows прямой доступ к портам ограничен. Ввод
прямых обращений к портам в приложениях может вызвать зависание
программы или ее аварийное завершение из-за превышения привилегий.
Для этой цели в составе ядра OS имеется большой набор типовых
обработчиков – функций BIOS, связанных с тем или иным общепользовательским прерыванием.
Поскольку количество прерываний ограничено, то обычно прерывание
имеет несколько функций, а отдельные функции и подфункций BIOS:
функции прерывания 10h – работа с портами видеоконтроллера VGA
функции прерывания 13h – работа с дисковыми системами и DMA
функции прерывания 14h – работа с последовательным портом СОМ
функции прерывания 15h – работа с манипулятором мышь
функции прерывания 16h – работа с клавиатурой
функции прерывания 17h – работа с параллельным портом LPT
функции прерывания 1Ah – работа с таймером, времязадающие функции
функции прерывания 80h – работа со звуковым процессором

30. Система Plug & Play автоопределения устройств ПЭВМ.
Основные принципы построения системы PnP были сформулированы и
частично внедрены в 1974-м году для шины МСА (Micro Channel Architecture).
Основные принципы построения системы PnP:
1. Ресурсы ядра ПЭВМ (порты доступа и их разрядность, номера прерываний, адресное пространство ОЗУ для обмена информацией, каналы прямого
доступа) не являются жестко распределенными, а присваиваются по
требованию.
2. Каждое периферийное (по отношению к ядру системы) устройство имеет
описание набора требований в своем BIOS.
3. В составе BIOS PnP имеется программа – системный конфигуратор,
которая присваивает номера периферийным устройствам, составляет
паспорта (описания) этих устройств и выделяет необходимые ресурсы, с
учетом недопущения конфликтов, при необходимости производит
оптимизацию (перераспределение) ресурсов.
Паспорта устройств сохраняются в реестре.
4. После загрузки операционной системы для периферийных устройств
загружаются соответствующие системные драйвера. Осуществляется
повторная проверка безконфликтной работы устройств.
5. При отключении периферийного устройства или подключения нового
операционная система автоматически перераспределяет освободившиеся
ресурсы, определяет параметры нового устройства, проверяет его и
предоставляет необходимые ресурсы без перезагрузки OS (на лету).

PnP- спецификация архитектуры аппаратных средств ПЭВМ, используемая соответствующими операционными системами для их конфигурирования и исключения конфликтов устройств между собой.
Основной компонент – все оборудование, подключаемое к шинам, содержит энергонезависимые регистры POS (Programmable Option Select), где хранится конфигурация устройства и требуемые ресурсы.
Дополнительный компонент – файлы OS описания устройств, драйверов
к ним и требуемых ресурсов (ini –файлы или реестр OS).
Программы BIOS PnP, бесконфликтно распределяющие ресурсы.
Обычная загрузка системы:
пуск
POST
Поиск Boot OS
Загрузка OS
Загрузка BIOS PnP:
пуск
Определение PnP
нет
да
Конфигурирование
устойств
POST
Проверка
устройств
Поиск Boot OS
Чтение
POS
чтение
ini
Загрузка OS

Распределение ресурсов ПЭВМ между устройствами.
Для реализации принципов построения системы PnP, учитывая, что в
составе архитектуры ПЭВМ встречается достаточно много устаревших
устройств с жестко закрепленными за ними системными ресурсами, которые
изменять нецелесообразно (контроллер клавиатуры, системный интервальный таймер, контроллеры ПДП и т.д.), в реальной системе PnP используется
следующий порядок распределения ресурсов:
1. При проверке POST определяются устройства «не PnP».
2. Устройствам «не PnP» ресурсы выделяются в первую очередь согласно
спецификационных требований, т.к. эти устройства неперенастраиваемые.
3. При обнаружении конфликтов BIOS PnP генерирует уведомление о
необходимости устранения конфликтов вручную.
4. Затем осуществляется итерационное конфигурирование устройств PnP.
5. Используются методы изоляции устройств друг от друга (присваивается
идентификатор и серийный номер), после этого устройству присваивается
дескриптор (Handle).
Присвоение идентификатора связано с используемой устройством шины
и осуществляется специальной программой из состава OS – энумера-тором
шины, которая является новым типом драйвера контроллера шины.
Номера идентификаторов являются уникальными для каждого устройства и
неизменными для каждой последующей перезагрузки OS, например, PnP
0000 – контроллер прерываний АТ, PnP 0100 – системный интервальный
таймер, PnР 0C04 – матсопроцессор, PnP 0А03 – контроллер шины PCI и т.д.

Подсистема ввода/вывода ПЭВМ и ядро OS решает следующие задачи:
1. Реализация вычислительной системы переменной конфигурации.
2. Параллельная работа программ в памяти и процедур ввода/вывода.
3. Упрощение процедур ввода/вывода, обеспечения их программной
независимости от конфигурации конкретного периферийного устройства.
4. Обеспечение автоматического распознавания ядром ЭВМ периферийных
устройств, многообразия их состояний (готовности, отсутствия носителя,
ошибок чтения/записи и т.д.).
5. Интеллектуализация интерфейса, налаживание диалога между ядром и
периферийными устройствами.
6. Переносимость и независимость OS от аппаратной платформы и ядра
ПЭВМ.
Пути решения этих задач:
1. Модульность - новые периферийные устройства не вызывают
существенных изменений архитектуры и вписываются в существующее
адресное пространство, каналы и порты доступа.
2. Унификация по формату передаваемых данных и команд вне зависимости от используемых внутренних машинных языков микроопераций.
3. Унифицированный интерфейс по разрядности шины, набору линий
сигналов управления и протоколам обмена.
4. Унифицированные по адресному пространству, доступному ядру ПЭВМ, и
каналам доступа к нему со стороны центрального процессора для операций
ввода/вывода информации в пределах этого адресного пространства,.

Современная система PnP состоит из следующих компонентов:
1. BIOS стандарта PnP.
Уведомления – сообщение пользователю об обнаружении нового
устройства
Конфигурирование – изоляция устройства до присвоения ID.
Поддержка данных- информация завершения POST на специальной RAM.
2. Система драйверов-энумераторов шины PCI.
Контроллер шины получает информацию из RAM об устройстве или из
реестра для устройств «не PnP» и присваивает уникальный номер Vendor_ID.
3. Дерево аппаратных средств и реестр.
Ветвь в реестре OS под названием «HKEY_LOKAL_MACHINE\HARDWARE»,
которая состоит из типов аппаратных устройств.
4. Windows 95 и выше (или другая OS PnP).
Фирма Intel предлагает спецификацию PnP всем разработчикам OS.
5. Драйверы устройств PnP.
Спецификация PnP предполагает не только наличие доступной для BIOS
информации об устройстве в RAM этого устройства, но и динамически подгружаемый драйвер этого устройства. Существует интерфейс прикладного
программирования (API) для создания таких драйверов для новых устройств
стандарта PnP. Загрузка таких драйверов должна регистрироваться диспетчером конфигурации и отвечать за выделенные ресурсы (сдавать их при
выгрузке).

6. Арбитр ресурсов (служба OS PnP).
Основные функции:
- Обновление реестра, помещая туда новейшую информацию о выделении
ресурсов на стадии загрузки,
- Переназначение ресурсов «на лету» любым устройства PnP, конфигурация
которых изменилась.
Арбитр ресурсов работает в контакте с диспетчером конфигурации,
который в любой момент может запросить у арбитра ресурсов освобождения ресурса с последующим предоставлением его другому устройству.
7. Диспетчер конфигурации (служба OS PnP).
Отвечает за процесс конфигурирования всей системы в целом.
Диспетчер конфигурации непосредственно взаимодействует, как с BIOS,
так и с реестром, координируя процесс конфигурирования в ходе событий:
- когда BIOS отправляет ему список устройств «не PnP» на системной плате
при загрузке, которые имеют жестко закрепленные за ними ресурсы,
- когда он получает извещение об изменении конфигурации от BIOS или от
энумераторов шин, которую он использует для идентификации всех
устройств на конкретной шине, а также требования каждого устройства о
выделении ресурсов. Эта информация заносится в реестр.
8. Пользовательский интерфейс (API).
Основное требование для пользовательских приложений, запускаемых
в OS PnP – они не должны иметь явных обращений к ресурсам устройств
(портам ввода/вывода, прерываниям или дискам) необходимо заменять эти
обращения формальными обращениями к соответствующим устройствам.

Конфигурационное адресное пространство шины PCI
Одним из главных усовершенствований шины PCI по сравнению с другими
архитектурами ввода-вывода стал её конфигурационный механизм.
В дополнение к типичным адресным пространствам памяти и вводавывода в PCI вводится конфигурационное адресное пространство.
Оно состоит из 256 байт, которые можно адресовать, зная номер шины PCI,
номер устройства и номер функции в устройстве.
Первые 64 байта из 256 стандартизированы, а остальные регистры могут
быть использованы по усмотрению изготовителя устройства.
Регистры Vendor ID и Device ID идентифицируют устройство и обычно
называются PCI ID.
Шестнадцатиразрядный регистр Vendor ID выдаётся организацией PCI-SIG.
Но только при уплате членского взноса в организацию.
Шестнадцатиразрядный регистр Device ID назначается изготовителем
устройства.
Существует проект создания базы данных всех известных значений
регистров Vendor ID и Device ID.
Аналогичное решение существует и для универсальной последовательной
шины USB.
Сообщество разработчиков шины – организация USB-IF также ведет
регистрацию всех значений регистров Vendor ID для USB.
Чтобы стать членом USB-IF, нужно платить по 4000$ членских взносов
ежегодно. Тогда вам бесплатно выделят двухбайтовый VID (Vendor_ID).

void f_DeviceDescriptor(void) //
Дескриптор драйвера устройства USB

Как писать драйвер USB-устройства PnP ?
автор Глазков Игорь
Статья в 7 частей
Опубликовано: 13 Марта 2013 года
http://npf-wist.com/
ООО «НПФ Вист» Украина
Учебный комплект STK0001
на базе микроконтроллера
фирмы «Microchip»
280 гривен (35$)
В данный комплект входит:
1. Устройство (модель), которое программируется, как USB-устройство.
2. Программатор, с помощью которого разрабатываемая программа (ее
бинарный код) зашивается в устройство (модель).
3. Кабель – переходник USB-COM – порт при его отсутствии в ВАШЕМ
компьютере. Этот порт нужен для просмотра данных, получаемых
программируемым USB-устройством.
4. Брошюра с подробным описанием последовательных шагов для
получения связки: “USB-устройство – драйвер - программа обращения к
устройству”.
5. CD-диск с дополнительным программным обеспечением.

31. Общие сведения об операционных системах.
Общие понятия об операционной системе.
Чтобы полностью овладеть всеми возможностями своего компьютера,
необходимо знать и понимать его операционную систему.
Назначение операционной системы заключается в обеспечении удобства
управления компьютером.
Любая операционная система, в полном смысле этого термина, является
первой и наиболее важной программой любого компьютера. Как правило,
она является и наиболее сложной, используемой только для управления
самим компьютером.
Основная часть работы операционной системы заключается в
выполнении огромного количества рутинных операций контроля, проверки
достоверности, вычисления значений физических адресов и т.д. и т.п. и
предназначена, чтобы скрыть от пользователей большое количество
сложных и ненужных им деталей процесса управления аппаратной частью.
Как правило, операционная система состоит из нескольких частей:
Первая часть - это система BIOS в ПЗУ ПЭВМ.
Вторая часть - главная загрузочная запись.
Третья часть – аппаратный загрузчик операционной системы.
Четвертая часть – сканер и конфигуратор аппаратных средств ПЭВМ.
Пятая часть – ядро операционной системы и командный монитор.
Шестая часть – файлы конфигурации ini или реестр OS.
Седьмая часть – Диспетчеры объектов и устройств.
Восьмая часть – драйверы устройств.

Архитектура операционной системы Windows NT/2000/XP/7/8.
Приложение
POSIX
Подсистема
POSIX
Приложение
Win32
Подсистема
Win32
Приложение
OS/2
Подсистема
OS/2
Процесс
регистрации
в системе
Подсистемы рабочей
среды
Подсистема
защиты
Уровни сервисов OS
Пользовательский режим
Режим ядра
Диспетчер
энергопитания
Средство
локального
вызова
процедур
Диспетчер
механизмов
Plug & Play
Диспетчер
виртуальной
памяти
Диспетчер
процессов
Справочный
монитор
защиты
Диспетчер
объектов
Системные сервисы (службы модуля EXEcutive)
Диспетчер
ввода/вывода
Файловые системы
Диспетчер КЭШа
Драйверы устройств
Ядро OS
Слой абстрагирования от оборудования HAL
Аппаратная часть
Сетевые драйверы

Пояснения к архитектуре операционной системы.
Пользовательский режим.
Большая часть приложений, запускаемых пользователем, работает в
пользовательском режиме. Все эти приложения обладают ограниченным
доступом к операционной системе, благодаря чему при возникновении
неполадок в программе приложения ядро ОС остается надежно защищенным
и продолжает нормально функционировать.
Пользовательское приложение работает в рамках изолированного
адресного пространства, предоставляемого операционной системой.
При обращении к аппаратным устройствам (принтеру) службами ядра
(диспетчером ввода/вывода) запускается соответствующий драйвер.
Службы Windows (например, Task Scheduler, Messenger, Alerter и др.)
работают в пользовательском режиме в специальном пользовательском
контексте безопасности индивидуального рабочего окружения каждой
конкретной прикладной задачи.
Режим ядра.
Процессы, работающие в этом режиме, обладают наивысшим уровнем
привилегий. Они работают в одном и том же адресном пространстве и могут
напрямую обращаться к оборудованию компьютера, включая такие важные
устройства, как центральный процессор или видеоадаптер.
В этом же режиме функционируют драйверы устройств, все системные
диспетчеры, модуль Microkernel, все службы модуля EXEcutive, а также
системные сервисы уровня абстракции оборудования HAL (Hardware
Abstraction Layer).

Модуль EXEcuteve.
Так обозначаются в Windows NT/2000/XP программные компоненты,
работающие в режиме ядра.
Эти компоненты включают в себя жизненно-важные службы ОС такие,
как управление памятью, вводом/выводом, системой безопасности,
механизмами взаимодействия процессов, кэшированием, а также системой
управления объектами.
Модуль EXEcutive загружается в процессе начальной загрузки ОС и
является частью файла Ntoskrnl.exe.
Модуль Microkernel.
Управляет переключением процессора между выполнением разных
потоков, а также обрабатывает системные прерывания и исключения.
Этот модуль синхронизирует работу нескольких процессоров на
многопроцессорных аппаратных платформах.
В отличие от остального кода ОС этот модуль никогда не перемещается
в виртуальную память, т.к. его компоненты должны иметь фиксированные
физические адреса.
Модуль Microkernel также является частью файла Ntoskrnl.exe.
Уровень абстракции оборудования HAL (Hardware Abstraction Layer).
Позволяет ОС работать на аппаратных платформах различной
конфигурации и количества процессоров, не требуя ее перекомпилирования.
Обычно HAL разрабатывается производителем аппаратной платфориы.
Модуль HAL находится в файле hal.dll и загружается в процессе
начальной загрузки ОС.

Процессы и потоки.
Процесс – это программа, которую можно запустить в рабочей среде ОС.
Каждый процесс обладает своим адресным пространством, одним или
несколькими программными потоками, а также идентификатором
безопасности SID (Security ID), соответствующим учетной записи в контексте
безопасности которой этот процесс функционирует.
Поток – это составляющая часть процесса (что-то вроде процесса
внутри процесса), т.е. программный код, выполнением которого занят
процессор.
В любой момент времени один процессор может выполнять только один
программный поток. Переключение процессора между выполнением
нескольких программных потоков осуществляется средствами ОС.
Каждый процесс может включать в себя несколько программных
потоков. Например, работая в программе Explorer, можно открыть новое
окно, для управления этим окном создается новый поток. Это означает, что в
системе существует только один экземпляр процесса Windows Explorer, но в
рамках этого процесса работает одновременно несколько программных
потоков.
Симметричная многопроцессорная архитектура и наращиваемость ОС.
ОС Windows NT/2000/XP обладают встроенной поддержкой многопроцессорных систем SMP (Symmetric Multiprocessing). Это означает, что если в
системе установлено больше одного процессора, то поток, требующий
выполнения, будет выполняться первым освободившимся процессором.
Переключение процессоров между потоками осуществит модуль Microkernel.

Службы и приложения пользовательского режима.
В пользовательском режиме работают процессы 3-х типов с различным
уровнем привилегий.
1. Системные процессы. Это процессы управляющие рабочей средой
пользовательского режима: Winlogon (подключение пользователей к
системе), Service Controller (сервис подключения служб), Session Manager
(диспетчер сеанса). Эти процессы запускаются модулем Ntoskrnl.exe в
процессе начальной загрузки и используют учетную запись LocalSystem.
2. Службы Windows. Службы (Alerter, Computer Browser и др.)
запускаются процессом Service Controller (файл services.exe) для прикладной
задачи. Эти службы функционируют, как отдельные потоки в рамках
процесса services.exe и не отображаются диспетчером задач в качестве
отдельных процессов.
Большинство служб не использует контекст безопасности LocalSystem.
3. Пользовательские прикладные программы. Т.е. прикладные
программы запускаемые пользователем в пользовательском режиме.
Каждая такая программа функционирует в рамках своего собственного
виртуального адресного пространства.
Процесс ассоциируется с подсистемой рабочего окружения environment
subsystem, который принимает от него вызовы, адресуемые API (Application
Program Interface) и преобразует их в команды, адресованные модулю
EXEcutive.
Для поддержки DOS служит подсистема времени исполнения Сsrss.exe,
которая запускается автоматически при формировании вызова.

Порядок загрузки операционной системы.
Загрузка любой операционной системы после завершения операций
инициализации аппаратных средств предусматривает следующие этапы:
- инициализация загрузчика OS (Boot loader process),
- выбор операционной системы (если предусмотрен выбор),
- повторное сканирование аппаратных средств,
- загрузка ядра OS и его инициализация.
После завершения POST BIOS передает управление на первое внешнее
устройство (согласно установленному приоритету), имеющее в буфере
данных байт 80h. Считывание следующего байта из этого порта активирует
программу аппаратной загрузки OS: т.е. будет выполнена процедура,
записанная в начале раздела MBR, которая позволит найти адрес первого
активного раздела в таблице разделов (по значению байта 80h), и загрузит
следующую за ним команду в табличной записи JMP(xx) на исполнение.
Адрес команды JMP является адресом аппаратного загрузчика NTLDR
(для операционной системы Windows NT/2000/XP), IBMBIO.COM (для DOS) или
аналогичной программы для других OS (например UNIX, Linux и т.д.).
NTLDR загрузит режим плоского 32-хразрядного адресного пространства
и запустит минифайловую систему, совместимую с FAT16, FAT32 и NTFS.
Затем читает Boot.ini в корневом каталоге и предлагает выбор OS к загрузке.
После выбора Windows XP выполняет программу Ntdetect.com, чтобы
собрать информацию о всех физических устройствах, подключенных к ЦП.
Затем NTLDR загружает в ОЗУ и запускает ядро операционной системы –
программу Ntoskrnl.exe, которая принимает данные сканирования.

Файлы, необходимые для успешного запуска ОС Windows XP.
Процедура запуска системы закончится неудачей, если хотя бы один из
указанных ниже файлов не будет найден или окажется поврежденным.
Наименование файла
Расположение файла
NTLDR
Корневой каталог Windows
Boot.ini
Корневой каталог Windows
Bootsect.dos (для выбора ОС)
Корневой каталог Windows
Ntdetect.com
Корневой каталог Windows
Ntbootdd.sys (только для SCSI)
Корневой каталог Windows
Ntoskrnl.exe
%SystemRoot%\System32
Hal.dll
%SystemRoot%\System32
Улей реестра \system
%SystemRoot%\System32\Config
драйверы устройств
%SystemRoot%\System32\Drivers
Файл Bootsect.dos содержит копию первого сектора раздела
альтернативной ОС (в данном случае DOS), аналогично можно построить
загрузчики для ОС UNIX и Linux, а затем отредактировать файл Boot.ini:
С:\ BOOTSECT.UNX=“UNIX”
С:\ BOOTSECT.LNX=“Linux”

Дальнейшее развитие архитектуры операционных систем.
Загрузочная запись ДОС версии 1.00 имеет одно незначительное отличие
от всех остальных версий: вместо имени Роберта О"Рира – разработчика
первой версии ДОС, которую он сделал по прототипу (Key DOS) за 2 месяца,
во всех последующих версиях стоит название фирмы - "Майкрософт".
В настоящее время разработка новой версии ОС занимает 6-10 лет и в ее
реализации участвует коллектив 200-300 человек.
Фирма Microsoft стала практически монополистом на рынке ОС ПЭВМ. Из
альтернативных ОС для ПЭВМ можно указать лишь Unix и Linux.
Основное совершенствование, которое реализовано в настоящее время
– для многоядерных процессоров нового поколения архитектуры Itanium
создан новый интерфейс между ОС и встроенным программным
обеспечением аппаратных платформ – EFI (Extensible Firmware Interface),
который предназначен для замены системы POST. Сейчас UEFI.
Для этой системы фирмой Microsoft разработан новый загрузчик для
операционной системы Windows, вошедший в состав ОС Windows 7/8,
bootmgr вместо NTLDR, файлы Boot.ini и Ntdetect.com также исключены из
системы, т.к. информация, которая хранилась там, находится в BOOT, а все
аппаратное окружение полностью соответствует спецификации ACPI.
Для изоляции MBR, ВООТ и загрузчика от неосторожных действий
пользователя создается изолированный системный раздел на жестком диске
размером 100 Мбайт.
Соответствующим образом откорректирован реестр Windows.

ЛЕКЦИЯ 7. ПАРАЛЛЕЛЬНЫЕ И ПОСЛЕДОВАТЕЛЬНЫЕ ПОРТЫ

МПС работает с внешними устройствами (ВУ), от ВУ она получает информацию и обработанную информацию передает на ВУ. В качестве ВУ может служить любой объект управления или источник информации (различные кнопки, датчики, микросхемы приемников, синтезаторов частот, дополнительной памяти, исполнительные механизмы, двигатели, реле и т.д.). Все ВУ подключаются к МП с помощью параллельных или последовательных портов.

Параллельные порты позволяют осуществить параллельный обмен информацией между МП и ВУ. С точки зрения ВУ порт представляет собой обычный источник или приемник информации со стандартными цифровыми логическими уровнями (обычно ТТЛ), а с точки зрения МП - это ячейка памяти, в которую можно записывать данные (из МП) или в которой появляется информация (от ВУ). Параллельные порты позволяют согласовывать низкую скорость работы ВУ и высокую скорость работы системной шины МП.

Порты ввода. В зависимости от направления передачи данных параллельные порты называются портами ввода, вывода или портами ввода – вывода (если они двунаправленные). На рисунке 7.1 приведена функциональная схема порта ввода.

В качестве порта ввода обычно используются схемы с третьим состоянием - шинным формирователем (ШФ). Из порта ввода возможно только чтение информации. Выход ШФ подключается к системной шине. Значение сигнала с внешнего вывода порта считывается по сигналу "RD".Чтобы попасть именно на заданное ВУ в составе порта ввода-вывода всегда присутствует дешифратор адреса.

Рис. 7.1. Функциональная схема порта ввода

Порт вывода. Функциональная схема порта вывода приведена на рисунке 7.2.

Рис. 7.2. Функциональная схема порта вывода

В качестве порта вывода может быть использован параллельный регистр. В порт вывода возможна только запись. Данные с внутренней шины микроконтроллера записываются в регистр по сигналу "WR". Выходы "Q" регистра могут быть использованы как источники логических уровней для управления ВУ.

Во многих МП и МК для портов выделяется отдельное адресное пространство и, соответственно, отдельные команды. Например, ……

Порты ввода-вывода. Параллельные порты могут быть двунаправленными. В МК, например, параллельные порты являются встроенными и двунаправленными. Типичная схема двунаправленного порта ввода/вывода (одной линии) МК приведена на рис. 7.3.



Рис. 7.3. Типовая схема одного вывода двунаправленного порта

ввода - вывода МК.

Дешифратор адреса разрешает работу именно этого порта – разрешение на ввод или вывод. Схема содержит триггер данных и триггер управления. Триггер управления разрешает вывод данных на внешний вывод, если подан управляющий сигнал WR. В современных МК, как правило, обеспечивается индивидуальный доступ к триггерам данных и управления, что позволяет использовать каждую линию независимо в режиме ввода или вывода.



Необходимо обратить особое внимание на то, что при вводе данных считывается значение сигнала, поступающее на внешний вывод, а не содержимое триггера данных. Если к внешнему выводу МК подключены выходы других устройств, то они могут установить свой уровень выходного сигнала, который и будет считан вместо ожидаемого значения триггера данных.

Для МК в качестве параметра приводят число линий ввода -вывода. Линии ввода – вывода объединены в многоразрядные (чаще

8-разрядные) параллельные порты ввода/вывода. В памяти МК каждому порту ввода/вывода соответствует свой адрес регистра данных.

Обращение к регистру данных порта ввода/вывода в некоторых МК производится теми же командами, что и обращение к памяти данных. Во многих МК отдельные разряды портов могут быть опрошены или установлены командами битового процессора.

Каждый порт обычно имеет 3 регистра. Например, если имеем дело с портом В, имеется регистр данных порта (PORTB ), регистр направления порта (DDRB) и регистр PINB , с которого считываются сигналы на внешних контактах порта.

При выводе информация на канале фиксируется и сохраняется до ее смены в выходном регистре порта (до следующей команды OUT, адресованной к этому каналу). При вводе же информация не фиксируется.

Параллельный обмен является быстродействующим, однако характеризуется небольшим расстоянием передачи (1 – 2 метра).

Уровни сигналов и нагрузочная способность. Согласование между собой уровней сигналов портов и внешних микросхем не представляет трудностей, так как практически все современные МС по входу и выходу согласованы с TTЛ уровнями. Если же это не так, то для согласования нестандартных уровней с TTЛ уровнями выпускаются специальные МС.

Дело не только в уровнях сигналов согласуемых МС, но и нагрузочной способности. Необходимо знать нагрузочную способность портов и в случае необходимости «умощнять» выход. В качестве примера на рисунке 7.4. показано подключение светодиодного индикатора.

Рис. 7.4. Подключение одиночного светодиодного индикатора.

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

8.2. ПОСЛЕДОВАТЕЛЬНЫЕ ИНТЕРФЕЙСЫ (ПОРТЫ).

Последовательная связь. В настоящее время наиболее распространенным способом обмена данными в МПС является последовательная. Последовательно связываются между собой микропроцессоры (микроконтроллеры); МП и ПЭВМ; МП и интеллектуальные датчики; МП и другие МС на плате.


Рис. 7.5. Последовательная связь между передатчиком и приемником

В случае последовательной связи байт данных передается по единственному проводу бит за битом (рис. 7.5). Очевидное преимущество последовательной передачи данных состоит в том, что она требует небольшого количества линий связи.

Последовательная связь может быть однонаправленная (симплексная), двунаправленная с разделением во времени (полудуплексная) и двунаправленная (дуплексная).

Существует 2 типа последовательной связи: асинхронная и синхронная. Если передача данных нерегулярная, то осуществляется асинхронный обмен. Если обмен осуществляется большими массивами, то используется синхронная передача. Кадр асинхронного обмена представлен на рис. 7.6.


Рис 7.6. Кадр асинхронной передачи

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

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

При синхронной передаче должен быть отдельный канал синхронизации. Выборка данных на входе приемника и изменение данных на выходе передатчика синхронизируется от одного и того же тактового сигнала (рисунок 7.7). Каждый информационный кадр стробируется синхросигналом. Скорость передачи в синхронном режиме выше из-за отсутствия служебных бит.

Скорость передачи по последовательному каналу измеряется в битах в секунду (в бодах) и может доходить до десятков Мбит/с.

Рис. 7.7. Синхронная передача данных

Контроллеры последовательной связи . Для преобразования параллельного цифрового кода в последовательный используются специальные схемы (контроллеры), построенные на базе сдвиговых регистров, тактируемых импульсными последовательностями определенной частоты. Каждым тактовым импульсом параллельный цифровой код сдвигается на одну позицию, которая поступает на линию связи. Таким образом, параллельный цифровой код превращается в последовательность импульсов стандартных уровней.

Кроме преобразования кодов контроллеры позволяют:

– изменять число информационных бит в кадре,

– изменять скорость передачи информации,

– контролировать ошибки и т.д.

В качестве примера можно привести контроллеры последовательной связи USART – универсальный синхронно-асинхронный приемо-передатчик. Он встраивается в МК (в МПС может быть выполнен в виде отдельной МС) и выполняет все необходимые процедуры преобразования кодов. Может работать в синхронном и асинхронном режимах. Обеспечивает дуплексный режим связи, детектирование стартовых посылок, ошибок четности и формата. Единица обмена - символ, буква, цифра, любой другой знак. Он кодируется последовательностью из 5-8 бит. Максимальная скорость обмена информацией в асинхронном режиме - 9,6 кбит/с, в синхронном - 56 кбит/с.

Последовательная связь с ПЭВМ. Частоинформация должна передаваться из МК в ПЭВМ, например, в системах сбора информации. Первым и наиболее удачным среди последовательных интерфейсов оказался RS-232 , до настоящего времени являющийся неотъемлемой частью любого РС - совместимого компьютера в виде СОМ - порта.

Интерфейс RS-232C разработан в 1969 году и до сих пор активно используется для синхронной и асинхронной последовательной связи при двухточечном соединении, в полудуплексном и дуплексном режимах обмена. При передаче используются уровни сигналов ±12 В. Скорость передачи данных составляет от 50 до 115 кбод на расстояние до 15 м.

Различными фирмами выпускается широкая номенклатура микросхем, предназначенных для преобразования ТТЛ/КМОП - уровней в уровни RS-232 и обратно. Большинство из них имеют встроенный преобразователь напряжения и работают от одного источника питания +5 В. Различные типы микросхем могут отличаться нагрузочной способностью, величиной емкостной нагрузки, типом корпуса.

RS-232 имеют низкую защищенность от синфазной помехи. Существенными преимуществами в этом плане обладают двухточечный интерфейс RS-422 и его магистральный аналог RS-485, в которых сигнал передается в дифференциальном виде. Но эти интерфейсы отсутствуют в стандартной комплектации компьютеров и микроконтроллеров. Поэтому применение RS-422 и RS-485 приводит к необходимости использования дополнительных устройств и программного драйвера.

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

Такие устройства ввода и вывода, как клавиатура, мышь, мо­нитор и принтер, входят в стандартную комплектацию ПК. Все периферийные устройства ввода должны коммутироваться с ПК таким образом, чтобы данные, вводимые пользователем, могли не только корректно поступать в компьютер, но и в дальнейшем эффективно обрабатываться. Для обмена данными и связи между периферией (устройствами ввода/вывода) и модулем обработки данных (материнской платой) может быть организована парал­лельная или последовательная передача данных.

Параллельная связь означает, что все 8 бит (или 1 байт) пересылаются и передаются не один за другим, а одновременно (параллельно) или, точнее, каждый по своему проводу. Принцип параллельной передачи данных становится очевидным, если рас­смотреть кабель, подсоединенный к разъему параллельного ин­терфейса, например кабель принтера. Он значительно толще, чем последовательный кабель мыши, поскольку кабель для параллель­ной передачи данных должен как минимум содержать восемь про­водов, каждый из которых предназначен для передачи одного бита.

Параллельные интерфейсы разрабатывает фирма Centronics, поэтому параллельный интерфейс часто называют интерфейсом Centronics.

Параллельный интерфейс для принтера обычно обозначают LPT (Line Printer). Первый подключенный принтер обозначается как от LPT1, а второй - как от LPT2.

Существуют несколько типов параллельных портов: стандарт­ный, ЕРР и ЕСР.

Стандартный параллельный порт предназначен только для од­носторонней передачи информации от ПК к принтеру, что зало­жено в электрической схеме порта. Он обеспечивает максималь­ную скорость передачи данных от 120 до 200 Кбайт/с.

Порт.ЕРРявляется двунаправленным, т.е. обеспечивает парал­лельную передачу 8 бит данных в обоих направлениях и полнос­тью совместим со стандартным портом. Порт ЕРР передает и при­нимает данные почти в шесть раз быстрее стандартного парал­лельного порта, чему способствует то, что порт ЕРР имеет бу­фер, сохраняющий передаваемые и принимаемые символы до момента, когда принтер будет готов их принять. Специальный режим позволяет порту ЕРР передавать блоки данных непосред­ственно из RAM PC в принтер и обратно, минуя процессор. При использовании надлежащего программного обеспечения порт ЕРР может передавать и принимать данные со скоростью до 2 Мбит/с.

Порт ЕСР, обладая всеми возможностями порта ЕРР, обеспе­чивает повышенную скорость передачи данных за счет функции сжатия данных. Для сжатия данных используется метод RLE (Run length Encoding), согласно которому длинная последовательность одинаковых символов передается всего лишь двумя байтами: один байт определяет повторяющийся символ, а второй - число по­вторений. При этом стандарт ЕСР допускает сжатие и распаковку данных как программно (путем применения драйвера), так и ап-паратно (схемой порта). Данная функция не является обязатель­ной, поэтому порты, периферийные устройства и программы могут ее и не поддерживать. Она может быть реализована, когда режим сжатия данных поддерживается как портом ЕСР, так и принте­ром. Увеличение скорости передачи данных с помощью порта ЕСР существенно уменьшает время распечатки данных на принтере.


Использование преимуществ функциональных возможностей портов ЕСР и ЕРР возможно при наличии компьютера, оборудо­ванного одним из этих стандартов.

Последовательная связь осуществляется побитно: от­дельные биты пересылаются (или принимаются) последователь­но один за другим по одному проводу, при этом возможен обмен данными в двух направлениях, прием и передача данных осуще­ствляются с одинаковой тактовой частотой. Для последователь­ных интерфейсов выбор подключаемых устройств значительно шире, поэтому большинство ПК обычно оборудовано двумя ин­терфейсными разъемами для последовательной передачи данных. В качестве стандартного обозначения для последовательного интерфейса чаще всего используют RS-232, RS-422, RS-465. Разъемы последовательного интерфейса на ПК представляют собой 9-контактный (вилка) Sub-D или 25-контактный (вилка) Sub-D.

Для установления связи между двумя последовательными ин­терфейсами предварительно необходимо сконфигурировать их со­ответствующим образом, т.е. указать, как будет осуществляться обмен данными: скорость обмена, формат данных, контроль чет­ности и т. п. Аппаратное конфигурирование интерфейса путем со­ответствующей установки джамперов или переключателей неудоб­но, поскольку приходится вскрывать корпус ПК. Обычно конфи­гурирование последовательного интерфейса осуществляется про­граммным способом, тем более что среда Windows предоставляет такую возможность.


Лекция 6 Последовательный и параллельный порты .

6.1 Параллельные интерфейсы

6.1.1. Интерфейс Centronics и LPT-порт

6.1.2 Интерфейс Centronics

6.1.3 Традиционный LPT-порт

6.1.4 Расширения параллельного порта

6.1.5 Стандарт IEEE 1284

6.1.6 Физический и электрический интерфейсы

6.1.7 Развитие стандарта IEEE 1284

6.1.8 Конфигурирование LPT-портов

6.2 Последовательные интерфейсы

6.2.1. Способы последовательной передачи

6.2.2 Интерфейс RS-232C

6.2.3 Электрический интерфейс

6.2.4 СОМ-порт

6.2.5 Использование СОМ-портов

6.2.6 Ресурсы и конфигурирование СОМ-портов

6 .1 Параллельные интерфейсы

Параллельные интерфейсы характеризуются тем, что в них для передачи бит в слове используются отдельные сигнальные линии, и биты передаются одновременно. Параллельные интерфейсы используют логические уровни ТТЛ (транзисторно-транзисторной логики), что ограничивает длину кабеля изза невысокой помехозащищенности ТТЛ-интерфейса. Гальваническая развязка отсутствует. Параллельные интерфейсы используют для подключения принтеров. Передача данных может быть как однонаправленной (Centronics), так и двунаправленной (Bitronics). Иногда параллельный интерфейс используют для связи между двумя компьютерами - получается сеть, "сделанная на коленке" (LapLink). Ниже будут рассмотрены протоколы интерфейсов Centronics, стандарт IEEE 1284, а также реализующие их порты PC.

6.1.1. Интерфейс Centronics и LPT-порт

Для подключения принтера по интерфейсу Centronics в PC был введен порт параллельного интерфейса - так возниклоназвание LPT-порт (Line PrinTer - построчный принтер).Хотя сейчас через этот порт подключаются не только построчные принтеры, название "LPT" осталось.

6.1.2 Интерфейс Centronics

Понятие Centronics относится как к набору сигналов и протоколу взаимодействия, так и к 36-контактному разъему на ринтерах. Назначение сигналов приведено в табл. 1.1, а временные диаграммы обмена с принтером - на рис. 1.1. Интерфейс Centronics поддерживается принтерами с парал-
лельным интерфейсом. Его отечественным аналогом явля-
ется интерфейс ИРПР-М. Традиционный порт SPP (Standard Parallel Port) является однонаправленным портом, через который программно реализуется протокол обмена Centronics. Порт вырабатывает аппаратное прерывание по импульсу на входе Ack#. Сигналы порта выводятся на разъем DB-25S (розетка), установленный непосредственно на плате адаптера (или системной плате) или соединяемый с ней плоским шлейфом.

6.1.3 Традиционный LPT-порт

Адаптер параллельного интерфейса представляет собой набор регистров, расположенных в пространстве ввода/вывода. Регистры порта адресуются относительно базового адреса порта, стандартными значениями которого являются 3BCh, 378h и 278h. Порт может использовать линию запроса аппаратного прерывания, обычно IRQ7 или IRQ5. Порт имеет внешнюю 8-битную шину данных, 5-битную шину сигналов состояния и 4-битную шину управляющих сигналов, BIOS поддерживает до четырех (иногда до трех) LPT-портов (LPT1-LPT4) своим сервисом - прерыванием INT 17h, обеспечивающим через них связь с принтером по интерфейсу Centronics. Этим сервисом BIOS осуществляет вывод символа (по опросу готовности, не используя аппаратных прерываний), инициализацию интерфейса и принтера, а также опрос состояния принтера. Стандартный порт имеет три 8-битных регистра, расположенных по соседним адресам в пространстве ввода/вывода,
начиная с базового адреса порта (BASE).

6.1.4 Расширения параллельного порта

Недостатки стандартного порта частично устраняли новые типы портов, появившиеся в компьютерах PS/2.

Двунаправленный порт 1 (Type 1 parallel port} -интерфейс, введенный в PS/2. Такой порт кроме стандартного режима может работать в режиме ввода или двунаправленном режиме. Протокол обмена формируется программно, а для указания направления передачи в регистр управления порта введен специальный бит CR.5:0 - буфер данных работает на вывод, 1 - на ввод. Не путайте этот порт, называемый также enhanced bi-directional, с ЕРР. Данный тип порта прижился и в обычных компьютерах.

Порт с прямым доступом к памяти (Type 3 DMA parallelport)
применялся в PS/2 моделей 57, 90, 95. Был введен для повышения пропускной способности и разгрузки процессора при выводе на принтер. Программе, работающей с портом, требовалось только задать в памяти блок данных, подлежащих выводу, а затем вывод по протоколу Centronics произ-
водился без участия процессора. Позже появились другие адаптеры LPT-портов, реализующие протокол обмена Centronics аппаратно - Fast Centronics. Некоторые из них использовали FIFO-буфер данных Parallel Port FIFO Mode. He будучи стандартизованными, такие порты разных производителей требовали использования собственных специальных драйверов. Программы, использующие прямое управление регистрами стандартных портов, не умели более эффективно их использовать. Такие порты часто входили в состав мультикарт VLB. Существуют их варианты с шиной ISA, в том числе встроенные.

6.1.5 Стандарт IEEE 1284

Стандарт на параллельный интерфейс IEEE 1284, принятый в 1994 году, определяет порты SPP, ЕРР и ЕСР. Стандарт определяет 5 режимов обмена данными, метод согласования режима, физический и электрический интерфейсы. Согласно IEEE 1284, возможны следующие режимы обмена данными через параллельный порт:

^ Режим совместимости (Compatibility Mode) - однонаправленный (вывод) по протоколу Centronics. Этот режим соответствует стандартному порту SPP.

^ Полубайтный режим (Nibble Mode) - ввод байта в два цикла (по 4 бита), используя для приема линии состояния. Этот режим обмена может использоваться на любых адаптерах.

^ Байтный режим (Byte Mode) - ввод байта целиком, используя для приема линии данных. Этот режим работает только на портах, допускающих чтение выходных данных (Bi-Directional или PS/2 Type 1).

т Режим ЕРР (Enhanced Parallel Port) (EPP Mode) - двунаправленный обмен данными. Управляющие сигналы интерфейса генерируются аппаратно во время цикла обращения к порту. Эффективен при работе с устройства-
ми внешней памяти и адаптерами локальных сетей.

^ Режим ЕСР (Extended Capability Port) (ECP Mode) - двунаправленный обмен данными с возможностью аппаратного сжатия данных по методу RLE (Run Length Encoding) и использования FIFO-буферов и DMA. Управляющие
сигналы интерфейса генерируются аппаратно. Эффективен для принтеров и сканеров.

В компьютерах с LPT-портом на системной плате режим SPP, ЕРР, ЕСР или их комбинация - задается в BIOS Setup. Режим совместимости полностью соответствует стандартному порту SPP.

6.1.6 Физический и электрический интерфейсы

Стандарт IEEE 1284 определяет физические характеристики приемников и передатчиков сигналов. Спецификации стандартного порта не задавали типов выходных схем, предельных значений величин нагрузочных резисторов и
емкости, вносимой цепями и проводниками. На относительно невысоких скоростях обмена разброс этих параметров не вызывал проблем совместимости. Однако расширенные (функционально и по скорости передачи) режимы требуют четких спецификаций. IEEE 1284 определяет два
уровня интерфейсной совместимости. Первый уровень (Level I) определен для устройств медленных, но использующих смену направления передачи данных. Второй уровень (Level II) определен для устройств, работающих в
расширенных режимах, с высокими скоростями и длинными кабелями. К передатчикам предъявляются следующие требования:

^ Уровни сигналов без нагрузки не должны выходить за пределы -0,5... +5,5 В.

^ Уровни сигналов при токе нагрузки 14 мА должны быть не ниже +2,4 В для высокого уровня (Уон) и не выше +0,4 В для низкого уровня (VoiJ на постоянном токе.

Традиционные интерфейсные кабели имеют от 18 до 25 проводов, в зависимости от числа проводников цепи GND. Эти проводники могут быть как перевитыми, так и нет. К экранированию кабеля жестких требований не предъявлялось. Такие кабели вряд ли будут надежно работать на скорости
передачи 2 Мбайт/с и при длине более 2 м. Стандарт IEEE 1284 регламентирует свойства кабелей.


Три различных разъема, определенных в стандарте IEEE 1284

6.1.7 Развитие стандарта IEEE 1284

Кроме основного стандарта IEEE 1284, который уже принят, в настоящее время в стадии проработки находятся новые стандарты, дополняющие его. К ним относятся:

^ IEEE Р 1284.1 "Standard for Information Technology for Transport Independent Printer/Scanner Interface (TIP/SI)". Этот стандарт разрабатывается для управления и обслуживания сканеров и принтеров на основе протокола NPAP (Network Printing Alliance Protocol).

n IEEE P 1284.2 "Standard for Test , Measurement and Conformance to IEEE Std . 1284" - стандарт для тестирования портов, кабелей и устройств на совместимость с IEEE 1284.

ai IEEE P12843 "Standaixl for Interface and Protocol Extensions to IEEE Std. 1284 Compliant Peripheral and Host Adapter Ports" - стандарт на драйверы и использование устройств прикладным программным обеспечением (ПО). Уже приняты спецификации BIOS для использования ЕРР драйверами DOS. Прорабатывается стандарт на разделяемое использование одного порта цепочкой устройств или группой устройств, подключаемых через мультиплексор.

^ IEEE P1284.4 "Standard for Data Delivery and Logical Channels for IEEE Std. 1284 Interfaces" направлен на реализацию пакетного протокола достоверной передачи данных через параллельный порт. Основой служит протокол MLC (Multiple Logical Channels) фирмы ewlett-Packard, однако совместимость с ним в окончательной версии стандарта не гарантируется.

6.1.8 Конфигурирование LPT-портов

Управление параллельным портом разделяется на два этапа
предварительное конфшурирование (Setup) аппаратных средств порта и текущее (оперативное) переключение режимов работы прикладным или системным ПО. Оперативное переключение возможно только в пределах режимов, разрешенных при онфигурировании. Этим обеспечивается возможность согласования аппаратуры с ПО и блокирования ложных переключении, вызванных некорректными действиями программы. Конфигурирование LPT-порта зависит от его исполнения. Порт, расположенный на плате расширения (мультикарте), устанавливаемой в слот ISA или ISA+VLB, конфигурируется джемперами на самой плате. Порт на системной плате конфигурируется через BIOS Setup.

6.2 Последовательные интерфейсы

Последовательный интерфейс для передачи данных использует одну сигнальную линию, по которой информационные биты передаются друг за другом последовательно. Отсюда - название интерфейса и порта. Английские термины – Serial Interface и Serial Port (иногда их неправильно переводят как
"серийные"). Последовательная передача позволяет сократить количество сигнальных линий и увеличить дальность связи. Характерной особенностью является применение неТТЛ сигналов. В ряде последовательных интерфейсов применяется гальваническая развязка внешних (обычно вход-
ных) сигналов от схемной земли устройства, что позволяет соединять устройства, находящиеся под разными потенциалами. Ниже будут рассмотрены интерфейсы RS-232C, RS- 422А, RS-423A, RS-485, токовая петля, MIDI, а также СОМ-порт.

6.2.1. Способы последовательной передачи

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


биты. В идеале стробы располагаются в середине битовых интервалов, что позволяет принимать данные и при незначительном рассогласовании скоростей приемника и передатчика. Очевидно, что при передаче 8 бит данных, одного контрольного и одного стоп-бита предельно допустимое рас-
согласование скоростей, при котором данные будут распознаны верно, не может превышать 5%. С учетом фазовых искажений и дискретности работы внутреннего счетчика синхронизации реально допустимо меньшее отклонение частот. Чем меньше коэффициент деления опорной частоты внутреннего генератора (чем выше частота передачи), тем больше погрешность привязки стробов к середине битового интервала, и требования к согласованности частот становятся более строгими. Чем выше частота передачи, тем больше влияние искажений фронтов на фазу принимаемого сигнала. Взаимодействие этих факторов приводит к повышению требований к согласованности частот приемника и передатчика с ростом частоты обмена. Для асинхронного режима принят ряд стандартных скоростей обмена: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19 200, 38 400, 57 600 и 115 200 бит/с. Иногда вместо единицы измерения "бит/с" используют "бод" (baud), но при рассмотрении двоичных передаваемых сигналов это некорректно. В бодах принято измерять частоту изменения состояния линии, а при недвоичном способе кодирования (широко применяемом в современных модемах) в канале связи скорости передачи бит (бит/с) и изменения сигнала (бод) могут отличаться в несколько раз (подробнее см. в приложении А). Количество бит данных может составлять 5, 6, 7 или 8 (5- и 6-битные форматы распространены незначительно). Количество стоп-бит может быть 1, 1,5 или 2 ("полтора бита" означает только длительность стопового интервала). Асинхронный обмен в PC реализуется с помощью СОМ-порта с использованием протокола RS-232C. Синхронный режим передачи предполагает постоянную активность канала связи. Посылка начинается с синхробайта, за которым сразу же следует поток информационных бит. Если у передатчика нет данных для передачи, он заполняет паузу непрерывной посылкой байтов синхронизации. Очевидно, что при передаче больших массивов данных накладные расходы на синхронизацию в данном режиме будут ниже, чем в асинхронном. Однако в синхронном режиме необходима внешняя синхронизация приемника с передатчиком, поскольку даже малое отклонение частот приведет к искажению принимаемых данных. Внешняя синхронизация возможна либо с помощью отдельной линии для передачи сигнала синхронизации, либо с использованием самосинхронизирующего кодирования данных, при котором на стороне приемника из принятого сигнала могут быть выделены импульсы синхронизации. В любом случае синхронный режим требует дорогих линий связи или оконечного оборудования. Для PC существуют специальные платы – адаптеры SDLC (дорогие), поддерживающие синхронный режим обмена. Они используются в основном для связи с большими машинами (mainframes) IBM и мало распространены. Из синхронных адаптеров в настоящее время применяются адаптеры нтерфейса V.35.

На физическом уровне последовательный интерфейс имеет различные реализации, различающиеся способом передачи электрических сигналов. Существует ряд родственных международных стандартов: RS-232C, RS-423A, RS-422A и RS-485.


. Стандартный 25-контактный разъем последовательного порта

Несимметричные линии интерфейсов RS-232C и RS-423A
имеют самую низкую защищенность от синфазной помехи,
хотя дифференциальный вход приемника RS-423A несколько смягчает ситуацию. Лучшие параметры имеет двухточечный интерфейс RS-422A и его магистральный (шинный) аналог RS-485, работающие на симметричных линиях связи. В них для передачи каждого сигнала используются дифференциальные сигналы с отдельной (витой) парой проводов.

В перечисленных стандартах сигнал представляется потенциалом. Существуют последовательные интерфейсы, где информативен ток, протекающий по общей цепи передатчик-приемник - "токовая петля" и MIDI. Для связи на короткие расстояния приняты стандарты беспроводной инфракрасной связи. Наибольшее распространение в PC получил простейший из перечисленных - стандарт RS-232C, реализуемый СОМ-портами. В промышленной автоматике широко применяется RS-485, а также RS-422A, встречающийся и в некоторых принтерах. Существуют преобразователи сигналов для согласования этих родственных интерфейсов.

6.2.2 Интерфейс RS-232C

Интерфейс предназначен для подключения аппаратуры, передающей или принимающей данные {О ОД – оконечное оборудование данных или АПД - аппаратура передачи данных; DTE - Data Terminal Equipment), к оконечной аппаратуре каналов данных (АКД", DCE - Data Communication Equipment). В роли АПД может выступать компьютер, принтер, плоттер и другое периферийное оборудование. В роли АКД обычно выступает модем. Конечной целью подключения является соединение двух устройств АПД. Стандарт описывает управляющие сигналы интерфейса, пересылку данных, электрический интерфейс и типы разъемов. В стандарте предусмотрены асинхронный и синхронный режимы обмена, но СОМ-порты поддерживают только асинхронный режим. Функционально RS-232C эквивалентен
стандарту МККТТ V.24/ V.28 и стыку С2, но они имеют различные названия сигналов.

6.2.3 Электрический интерфейс

Стандарт RS-232C использует несимметричные передатчики и приемники - сигнал передается относительно общего провода - схемной земли (симметричные дифференциальные сигналы используются в других интерфейсах - например, RS-422). Интерфейс НЕ ОБЕСПЕЧИВАЕТ ГАЛЬВАНИ- ЧЕСКОЙ РАЗВЯЗКИ устройств. Логической единице
соответствует напряжение на входе приемника в диапазоне -12...-3 В. Для линий управляющих сигналов это состояние называется ON( "включено"), для линий последовательных данных - MARK. Логическому нулю соответствует диапазон +3...+12 В. Для линий управляющих сигналов состояние называется OFF ("выключено"), а для линий последовательных данных - SPACE. Диапазон -3...+3 В - зона нечувствительности, обусловливающая гистерезис приемника: состояние линии будет считаться измененным только после пересечения порога (рис. 2.5). Уровни сигналов на выходах передатчиков должны быть в диапазонах -12...-5 В и +5...+12 В для представления единицы и нуля соответственно. Разность потенциалов между схемными землями (SG) соединяемых устройств должна быть менее 2 В, при более высокой разности потенциалов возможно неверное восприятие игналов. Интерфейс предполагает наличие ЗАЩИТНОГО ЗАЗЕМЛЕНИЯ для соединяемых устройств, если они оба питаются от сети переменного тока и имеют сетевые фильтры.

Подключение и отключение интерфейсных кабелей устройств с автономным питанием должно производиться при отключенном питании. Иначе разность невыровненных потенциалов устройств в момент коммутации может оказаться приложенной к выходным или входным (что опаснее) цепям интерфейса и вывести из строя микросхемы.

6.2.4 СОМ-порт

Последовательный интерфейс СОМ-порт (Communication Port - коммуникационный порт) появился в первых моделях IBM PC. Он был реализован на микросхеме асинхронного приемопередатчика Intel 8250. Порт имел поддержку BIOS (/Л/Т 74/?), однако широко применялось (и применяется) взаимодействие с портом на уровне регистров. Поэтому во всех PC-совместимых компьютерах для последовательного интерфейса
применяют микросхемы приемопередатчиков, совместимые с i8250. В ряде отечественных PC-совместимых (почти) компьютеров для последовательного интерфейса применялась микросхема КР580ВВ51 - аналог 18251. Однако эта микросхема является универсальным синхронно-асинхронным приемопередатчиком (УСАПП или USART - Universal Asynchronous
Receiver-Transmitter). Совместимости с PC на уровне регистров СОМ-порта такие компьютеры не имеют. Хорошо, если у соответствующих компьютеров имеется "честный" драйвер B/OS /Л/Т 14h, а не заглушка, возвращающая состояние модема "всегда готов" и ничего не делающая. Совместимость на уровне регистров СОМ-порта считается необходимой. Многие разработчики коммуникационных пакетов предлагают работу и через B/OS /Л/Т 14h, однако на высоких скоростях это неэффективно. Говоря о СОМ-порте PC, по умолчанию будем подразумевать совместимость регистровой модели с i8250 и реализацию асинхронного интерфейса RS-232C.

6.2.5 Использование СОМ-портов

СОМ-порты чаще всего применяют для подключения
манипуляторов
(мышь, трекбол). В этом случае порт используется в режиме последовательного ввода; питание производится от интерфейса. Мышь с последовательным интерфейсом - Serial Mouse -может подключаться к любому исправному порту. Для подключения внешних модемов используется полный (9-проводный) кабель АПД-АКД, схема которого приведена на рис. 2.7. Этот же кабель используется для согласования разъемов (по количеству контактов); возможно применение переходников 9-25, предназначенных для мышей. Для работы коммуникационного ПО обычно требуется использование прерываний, но здесь есть свобода выбора номера (адреса) порта и линии прерывания. Если предполагается работа на скоростях 9600 бит/с и выше, то СОМ-порт должен быть реализован на микросхеме UART 16550A или совместимой. Возможности работы с использованием FIFO-буферов и обмена по каналам DMA зависят от коммуникационного ПО. Для связи двух компьютеров, удаленных друг от друга на небольшое расстояние, используют и непосредственное соединение их СОМ-портов нуль-модемным кабелем (рис. 2.8). Использование программ типа Norton Commander или Interink MS-DOS позволяет обмениваться файлами со ско-
ростью до 115,2 Кбит/с без применения аппаратных прерываний. Это же соединение может использоваться и сетевым пакетом Lantastic, предоставляющим более развитый сервис.

Подключение принтеров и плоттеров к СОМ-порту требует применения кабеля, соответствующего выбранному протоколу управления потоком: программному XON/XOFF или аппаратному RTS/CTS. Аппаратный протокол предпочтительнее. Прерывания при выводе средствами DOS (командами COPY или PRINT) не используются. СОМ-порт при наличии соответствующей программной поддержки позволяет превратить PC в терминал, эмулируя систему команд распространенных специализированных терминалов (VT-52, VT-100 и т. д.). Простейший терминал получается, если замкнуть друг на друга функции BIOS обслуживания СОМ-порта (INT 14h), телетайпного вывода (/Л/Т 10h) и клавиатурного ввода (INT 16h). Однако такой терминал будет работать лишь на малых скоростях обмена (если, конечно, его делать не на Pentium), поскольку функции BIOS хоть и универсальны, но не слишком быстры.

Интерфейс RS-232C широко распространен в различных ПУ и терминалах. СОМ-порт может использоваться и как двунаправленный интерфейс, у которого имеется 3 программно управляемые выходные линии и 4 программно-читаемые входные линии с двуполярными сигналами. Их использование определяется разработчиком. Существует, например, схема однобитного широтно-импульсного преобразователя, позволяющего записывать звуковой сигнал на диск PC, используя входную линию СОМ-порта. Воспроизведение этой записи через обычный динамик PC позволяет передать речь. В настоящее время, когда звуковая карта стала почти
обязательным устройством PC, это не впечатляет, но когда-то такое решение было интересным.

СОМ-порт используют для беспроводных коммуникаций с применением излучателей и приемников инфракрасного диапазона - IR (Infra Red) Connection. Этот интерфейс позволяет осуществлять связь между парой устройств, удаленных на расстояние, достигающее нескольких метров. Различают инфракрасные системы низкой (до 115,2 Кбит/с), средней (1,152 Мбит/с) и высокой (4 Мбит/с) скорости. Низкоскоростные системы служат для обмена короткими сообщениями, высокоскоростные - для обмена файлами между компьютерами, подключения к компьютерной сети,
вывода на принтер, проекционный аппарат и т. п. Ожидаются более высокие скорости обмена, которые позволят передавать "живое видео". В 1993 году создана ассоциация разработчиков систем инфракрасной передачи данных IrDA (Infrared Data Association), призванная обеспечить совместимость оборудования от различных производителей Инфракрасные излучатели не создают помех в радиочастотном диапазоне и обеспечивают конфиденциальность передачи. ИК-лучи не проходят через стены, поэтому зона приема ограничивается небольшим легко контролируемым пространством. Инфракрасная технология привлекательна
для связи портативных компьютеров со стационарными компьютерами или станциями. Инфракрасный интерфейс имеют некоторые модели принтеров.

6.2.6 Ресурсы и конфигурирование СОМ-портов

Компьютер может иметь до четырех последовательных портов СОМ 1-COM4 (для машин класса AT типично наличие двух портов). СОМ-порты имеют внешние разъемы-вилки DB25P или DB9P, выведенные на заднюю панель компьютера. СОМ-порты реализуются на микросхемах UART, совместимых с семейством 18250. Они занимают в пространстве ввода/вывода по 8 смежных 8-битных регистров и могут располагаться по стандартным базовым адресам. Порты вырабатывают аппаратные прерывания. Возможность разделяемого использования одной линии запроса несколькими портами (или ее разделения с другими устройствами) зависит от реализации аппаратного подключения и ПО. При использовании портов, установленных на шину ISA, разделяемые прерывания обычно не работают. Управление последовательным портом разделяется на два этапа - предварительное конфигурирование (Setup) аппаратных средств порта и текущее (оперативное) переключение режимов работы прикладным или системным ПО. Конфигурирование СОМ-порта зависит от его исполнения. Порт на плате расширения конфигурируется джамперами на самой плате. Порт на системной плате конфигурируется через BIOS Setup.

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

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

1Опишите назначение параллельных и последовательных интерфейсов.

2К чему относится понятие « Интерфейс Centronics »?

3Опишите «Традиционный LPT-порт».

4Опишите двунаправленный порт 1.

5Опишите порт с прямым доступом к памяти.

6Опишите особенности стандарта IEEE 1284.

7Какие уровни интерфейсной совместимости определяет IEEE 1284?

8Перечислите новые стандарты IEEE 1284.

9Опишите способы последовательной передачи сигналов.

10Опишите реализацию последовательного интерфейса на физическом уровне.

11Опишите назначение интерфейса RS-232C.

12Опишите особенности электрическогоинтерфейса RS-232C.

13Для чего используют СОМ-порты.

14Опишите использование СОМ-порта для беспроводных коммуникаций.

15Опишите конфигурирование СОМ-портов.

Конец формы

Занятие №4 Кабельные линии связи

1. Введение

2. Соединение по последовательным и параллельным портам

3. Соединение по последовательным шинам USB и FireWire

4. Соединение по технологии HomePlug PowerLine

5. Соединение по технологии HomePNA

6. Соединение через сетевые платы

7. Соединение через модемы

Введение

Каналы связи могут использовать кабели или быть или быть беспроводными. У каждого канала связи имеются свои достоинства и недостатки, которые будут рассмотрены ниже. Общим недостатком для кабельных соединений является необходимость прокладки самого кабеля. Общим недостатком для беспроводных сетей - слабая защищенность передаваемой информации и, как следствие, возможность несанкционированного доступа к ней.

Рис. 1. Каналы связи в простейших вычислительных сетях

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

1. «точка - точка» (англ.ad-hoc )-сеть состоит только из двух компьютеров,соединенных напрямую, без участия дополнительного сетевого оборудования (сетевых концентраторов, точек доступа и т.д.);

2. «инфраструктура» (англ.infrastructure )-сеть организуется с использованием

ТФУПД Занятие №4 .Кабельные линии связи

специального сетевого оборудования (сетевых концентраторов, точек доступа и т.д.). Большинство соединений, отнесенных на рис.1 к категории «инфраструктура»,

также могут образовывать соединения в режиме «точка» - «точка».

Соединение по последовательным и параллельным портам

До недавнего времени соединение по последовательным и параллельным портам являлось наиболее распространенным способом объединения двух компьютеров в вычислительную сеть в режиме «точка» - «точка».

Для такого соединения используется нуль-модемный кабель. Максимальная длина кабеля ограничена расстоянием 15 м. Для передачи данных на обоих компьютерах необходимо запустить специальное ПО.

Пример. Для ОСDOSобычно используетсяNorton Commander; для ОСWindows

Входящая в состав ОС программа прямое кабельное соединение (англ. Direct Cable

Connection, DCC).

Для современных ОС такое соединение выглядит полноценным сегментом сети. Скорость передачи данных через последовательный порт ограничена 115 Кбит/с, параллельный порт - 1200 Кбит/с.

Пример. Рассчитайте минимальное время, необходимое для передачи 600 Кбайт данных через параллельный порт.

Решение:

Т.к. в 1 байте содержится 8 бит, то необходимо переслать 600 * 8 = 4800 Кбит данных. Т.к. максимальная скорость передачи данных по параллельному порту составляет 1200 Кбит/с,то минимальное время передачи составляет:Т мин =4800 /1200 = 4 с. Ответ:

Т мин = 4 с.

Достоинствами соединения по последовательным и параллельным портамявляются малая цена, относительно большая длина кабеля, недостатком - малая скорость передачи данных.

Соединение по последовательным шинам USB и FireWire

Шины передачи данных USB (англ. Universal Serial Bus - универсальная последовательная шина) и IEEE 1394, известная также под названием Fire Wire (англ. огненный провод), спроектированные для работы с периферийным оборудованием,применяются и для организации компьютерных сетей.

Для USB максимальная длина соединительного кабеля равна 5 м. Максимальная скорость передачи данных:

Для стандарта USB 1.0 - 1,5 Мбит/с;

Для стандарта USB 1.1 - 12 Мбит/с;

Для стандарта USB 2.0 - 480 Мбит/с.

При работе с FireWire максимальная длина кабеля - 4.5 м. Максимальная скорость передачи данных:

Для стандарта IEEE 1394a - 400 Мбит/с;

Для стандарта IEEE 1394b - 800 Мбит/с.

Для обеих шин применяются схожие построения сетевой структуры: используется специфичный для шин транспортный протокол, поверх которого работают обычные прикладные сетевые протоколы. Поэтому компьютер, который помимо сети на базе FireWire или USB подключен к Ethernet-сети, необходимо настраивать как шлюз между физически различающимися сегментами. Для удлинения сегментов можно использовать аппаратные репитеры или специальный оптический кабель длиной до 100 м.

Достоинством соединений на базеFireWireиUSBявляется большая пропускнаяспособность каналов, недостатком - небольшая длина соединения.

ТФУПД Занятие №4 .Кабельные линии связи

Соединение по технологии HomePlug PowerLine

Технология HomePlug PowerLine (англ. соединение по домашней электропроводке )позволяет соединять компьютеры,используя в качестве канала связисуществующую электропроводку. Эта технология используется, когда прокладка нового кабеля или использование беспроводных сетей невозможны или нецелесообразны.

Линии электросетей для передачи данных применяются уже давно. Низкоскоростная технология PLC (англ. PowerLine Communication - передача по силовым линиям) использовалась для передачи данных в энергосистемах и на железных дорогах.

При создании высокоскоростной технологии необходимо было решить ряд проблем:

1. Достичь приемлемого уровня помехоустойчивости;

2. Адаптировать протокол к коммуникационным параметрам (затухание сигнала, частотные и фазовые искажения и др.);

3. Увеличить дальность передачи данных для установленных стандартов напряженности поля в электросети;

4. Обеспечить электромагнитную совместимость приборов в частотном диапазоне 1.6-30 МГц, используемом для передачи данных по электросети и радиолюбительскими службами.

В 2000г. некоммерческая организация HomePlug Powerline Alliance, объединявшая

в то время 13 компаний, приступила к разработке стандарта, взяв за его основу технологию PowerPacket . В 2001 г. HomePlug Powerline Alliance представил спецификацию HomePlug 1.0 , описывающую технологию и протокол организации высокоскоростной передачи данных по электросети. Стандарт предусматривает использование метода OFDM (англ. Orthogonal Frequency Division Multiplexing -

ортогональное частотное разделение каналов с мультиплексированием). Производится частотное разделение канала на 84 полосы в диапазоне от 4.3 до 20.9 МГц. Для модуляции применяется относительная квадратурная фазовая модуляция со сдвигом (англ.

DQPSK ). В качестве протокола доступа к среде используется коллективный доступ с обнаружением несущей и избежанием столкновений (англ. CSMA/CA).

Помехоустойчивость соединения обеспечивается контролем коэффициента «сигнал/шум» на каждой из несущих частот и исключением «шумящих» каналов. Максимальная скорость передачи данных по электросети в соответствии со спецификацией HomePlug1.0 и более поздней HomePlug 1.0.1 составляет14Мбит/с,а максимальная длина сегментамежду двумя устройствами - 300 м.

В разрабатываемой версии HomePlug AV скорость передачи данных возрастет до 100 Мбит/с, что откроет возможность их использования для передачи сигнала телевидения высокой четкости HDTV и VoIP .

Пример .АдаптерыHomePlugвыпускаются с интерфейсом подключенияUSB(напр. EDIMAX НР-1001) или разъемом RJ-45 (напр. EDIMAX HP-1002, работающим по сетевому протоколу lOBase-T/100Base-TX).

Адаптеры HomePlug подключаются к электропроводу с одной фазой, иначе приходится использовать специальные коммутаторы. Образуемая сеть имеет топологию «шина». Пересылаемые данные поступают на все адаптеры, но принимает их только тот адаптер, которому они адресованы. Работоспособность сети HomePlug и скорость передачи данных практически не зависят от скачков нагрузки электросети (включения или выключения нагревательных приборов, холодильников, стиральных машин и т.п.).

Достоинство технологии:никаких новых проводов,мобильность в зонепроложенной электропроводки. Недостаток этой технологии - возможность несанкционированного доступа.

ТФУПД Занятие №4 .Кабельные линии связи


©2015-2019 сайт
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-03-30