Страница: 6/13
Хост-контроллер
Хост-компьютер общается с устройствами через контроллер. Хост имеет следующие обязанности:
Ø обнаружение подключения и отсоединения устройств USB;
Ø манипулирование потоком управления между устройствами и хостом;
Ø управление потоками данных;
Ø сбор статистики;
Ø обеспечение энергосбережения подключенными ПУ.
Ø Системное ПО контроллера управляет взаимодействием между устройствами и их ПО, функционирующим на хост-компьютере, для согласования:
Ø нумерации и конфигурации устройств;
Ø изохронных передач данных;
Ø асинхронных передач данных;
Ø управления энергопотреблением;
Ø информации об управлении устройствами и шиной.
По возможности ПО USB использует существующее системное
ПО хост-компьютера - например, Advanced Power Management для управления энергопотреблением.
СОМ-порт
Последовательный интерфейс СОМ-порт (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.
Использование СОМ-портов
СОМ-порты чаще всего применяют для подключения манипуляторов (мышь, трекбол). В этом случае порт используется в режиме последовательного ввода; питание производится от интерфейса. Мышь с последовательным интерфейсом - Serial Mouse -может подключаться к любому исправному порту. Для согласования разъемов порта и мыши возможно применение переходника DB-9S-DB-25P или DB-25S-DB-9P. Для мыши требуется прерывание, для порта СОМ1 - IRQ4, для COM2 - IRQ3. Жесткая привязка номера IRQ к номеру порта обусловлена свойствами драйверов. Каждое событие - перемещение мыши или нажатие-отпускание кнопки – кодируется двоичной посылкой по интерфейсу RS-232C. Применяется асинхронная передача; двуполярное питание обеспечивается от управляющих линий интерфейса (табл. 2.3).
Две разновидности Serial Mouse - MS-Mouse и PC-Mouse (Mouse Systems Mouse) - требуют соответствующих драйверов, многие мыши имеют переключатель MS/PC. Мышь с "чужим" драйвером либо не отзывается, либо "скачет" загадочным образом. Эти разновидности используют различные форматы посылок: при одинаковой скорости 1200 бит/с, одном стоп-бите и отсутствии контроля четности Microsoft Mouse использует 7 бит данных, a PC-Mouse - 8 бит. Мышь посылает пакет при каждом изменении состояния - перемещении, нажатии или отпускании кнопки. Пакет, передаваемый MS-Mouse, состоит из трех байт (табл. 2.4). PC-Mouse передает 5 байт (табл. 2.5). Здесь LB (Left Buttom), MB (Middle Buttom) и RB (Right Buttom) означают состояние левой, средней и правой кнопок, Х[7:0] и Y[7:0] - биты относительного перемещения мыши с момента предыдущей посылки по координатам Х и Y. Положительным значениям соответствует перемещение по координате Х вправо, а по координате Y вниз для MS-Mouse и вверх для PC-Mouse. Отсюда становятся понятными беспорядочные перемещения курсора на экране при несоответствии драйвера типу мыши.
Биты |
D6 |
D5 |
D4 |
D3 |
02 |
01 |
00 | |
1-й байт |
1 |
LB |
RB |
Y7 |
Y6 |
Х7 |
Х6 | |
2-й байт |
0 |
Х5 |
Х4 |
ХЗ |
Х2 |
Х1 |
хо | |
3-й байт |
0 |
Y5 |
Y4 |
Y3 |
Y2 |
Y1 |
YO | |
Биты |
07 |
Об |
05 |
04 |
03 |
02 |
01 |
DO |
1-й байт |
1 |
о |
о |
0 |
о |
LB |
MB |
RB |
2-й байт |
Х7 |
Х6 |
Х5 |
Х4 |
ХЗ |
Х2 |
Х1 |
ХО |
3-й байт |
Y7 |
Y6 |
Y5 |
Y4 |
Y3 |
Y2 |
Y1 |
YO |
4-й байт |
Совпадает со 2-м байтом | |||||||
5-й байт |
Совпадает с 3-м байтом |
Реферат опубликован: 17/01/2007