Компьютерные книги
Главное меню
Главная О нас Добавить материал Поиск по сайту Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Аппаратное обеспечение -> Агуров П.В. -> "Интерфейсы USB. Практика использования и программирования" -> 77

Интерфейсы USB. Практика использования и программирования - Агуров П.В.

Агуров П.В. Интерфейсы USB. Практика использования и программирования — БВХ-Петербург, 2004. — 576 c.
ISBN 5-94157-202-6
Скачать (прямая ссылка): interfeysusbpraktikaispolzovaniya2004.djvu
Предыдущая << 1 .. 71 72 73 74 75 76 < 77 > 78 79 80 81 82 83 .. 168 >> Следующая

содержит всю необходимую информацию о драйверах, действиях, необходимых
при установке и удалении устройства, ключах системного реестра и т. д.;
? драйверы для PnP-устройств - их можно разделить на две категории'
драйверы WDM и NT. Последние являются "унаследованными" от Windows NT и
могут не полностью поддерживать архитектуру WDM. Драйверы WDM по
определению полностью соответствуют требованиям взаимодействия по
правилам РпР.
Пользовательский
режим
Режим ядра
Диспетчер
ввода/вывода
Реестр и INF-файлы
Компоненты установки и 4 - V РпР-
конфигурирования менеджер
-
Менеджер питания РпР-менеджер
NT PnP-драйверы Драйверы WDM
Слой аппаратных абстракций (HAL)
Ш
Рис. 10.3. Программные РпР-компоненты Windows 2000/ХР
10.2. Plug and Play для USB
Согласно спецификации USB, любое USB-устройство должно соответствовать
спецификации РпР. Шина USB поддерживает динамическое подклю-
226
Часть III. Практика программирования
чение и отключение устройств "по определению". Нумерация устройств шины
является постоянным процессом, отслеживающим изменения физической
топологии.
10.2.1. Конфигурирование устройств USB
При начальном подключении или после сброса производится начальное
конфигурирование. Хабы определяют подключение и отключение устройств к
своим портам и сообщают состояние портов при запросе от хоста. Хост
разрешает работу порта и адресуется к устройству через канал управления,
используя нулевой порт.
Хост определяет, является ли новое подключенное устройство хабом или
функцией, и назначает ему уникальный адрес USB. Хост создает канал
управления с этим устройством,'используя назначенный адрес и нулевой
номер конечной точки.
Если новое устройство является хабом, хост определяет подключенные к нему
устройства, назначает им адреса и устанавливает каналы. Если новое
устройство является функцией, уведомление о подключении передается
диспетчером USB заинтересованному ПО.
Когда устройство отключается, хаб автоматически запрещает соответствующий
порт и сообщает об отключении контроллеру, который удаляет сведения о
данном устройстве из всех структур данных. Если отключается хаб, процесс
удаления выполняется для всех подключенных к нему устройств. Если
отключается функция, уведомление посылается заинтересованному ПО.
10.2.2. Нумерация устройств USB
Нумерация устройств (Enumeration), подключенных к шине, осуществляется
динамически по мере их подключения (или включения их питания) без какого-
либо вмешательства пользователя или клиентского ПО. Процедура нумерации
выполняется следующим образом.
1. Включение устройства. Пользователь подключает устройство к порту, или
подается питание на устройство, уже подключенное к порту. Устройство
может подключаться к корневому или любому другому хабу. Хаб подает
питание на порт и устройство переходит в состояние Питание подано
(Powered).
2. Хаб определяет подключение устройства. Хаб, производящий постоянный
мониторинг каждого порта, определяет, что к порту подключено устрой-
- ство (см. разд. 18.1.7). Определив подключение устройства, хаб
продолжает подавать питание на устройство, но пока не передает данные, т.
к. устройство еще не готово их принимать.
Глава 10. Спецификация РпР для USB
227
3. Хаб информирует хост о новом устройстве. Хаб, к которому подключилось
устройство, информирует хост о смене состояния своего порта ответом на
опрос состояния. Каждый хаб имеет специальное прерывание (точнее,
конечно, канал типа interrupt) для передачи таких уведомлений. Когда хост
узнает о подключении нового устройства, он посылает запрос get_status для
получения дополнительной информации.
4. Хаб проверяет режим устройства. Хаб проверяет, является устройство
низкоскоростным или полноскоростным, и отправляет эту информацию в ответ
на запрос get_status. Спецификация USB 1.x позволяет хабу производить
определение скоростного режима и после сброса, но USB 2.0 требует знания
режима до сброса.
5. Хаб подает устройству сигнал сброса. Когда хост узнает о появлении
нового устройства, хост-контроллер посылает хабу запрос set_feature,
который указывает хабу произвести сброс устройства. Хаб производит сброс
только того порта, к которому подключено новое устройство, другие хабы и
порты шины не затрагиваются.
6. Хост определяет возможность работы устройства в режиме HS.
7. Хаб устанавливает соединение между устройством и шиной. Хост
проверяет, что сброс устройства произведен. Для этого хост посылает
запрос get_status. Если устройство не отвечает, хост повторяет запрос.
Состояние устройства после сброса называется Основным состоянием (Default
state). В этом состоянии регистры устройства сброшены, а устройство
готово к обмену по нулевому каналу.
8. Хост определяет конфигурацию нулевой точки. Хост посылает запрос
get_descriptor для того, чтобы узнать размер максимального пакета для
Основного канала. Хост посылает запрос по адресу 0 конечной точке номер
0. Так как в один момент времени хост будет работать только с одним
Предыдущая << 1 .. 71 72 73 74 75 76 < 77 > 78 79 80 81 82 83 .. 168 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Завалишин Д. "Интернетско-русский разговорник" (Web-программирование)

Заенцев И.В. "Нейронные сети: основные модели" (Web-программирование)

Владимиров А.А. "Wi-фу: «боевые» приемы взлома и защиты беспроводных сетей" (Web-программирование)

Вьейра Р. "SQL Server 2000. Программирование в 2 ч." (Web-программирование)

Веллинг Л.Т. "Разработка web приложений с помощью php и mysql" (Web-программирование)
Авторские права © 2013 ComputersBooks. Все права защищены.

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed