Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 301

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 295 296 297 298 299 300 < 301 > 302 303 304 305 306 307 .. 528 >> Следующая

контроллер передает данные по шине; USBRXD - принимаемые данные; USBRXP,
USBRXN - служат для определения скорости обмена (USBRXP=1, USBRXN = 0 -
скорость 12 Мбит/с, USBRXP = О, USBRXN = 1-1,5 Мбит/с) и состояния
асимметричного (singled ended) "О" (если USBRXP = USBRXN = 0);
USBTXP, USBTXN - определяют передаваемые данные (USBTXP = USBTXN = = 0 -
передается singled ended "О", если USBTXP = 0 и USBTXN = 1, то передается
логический "О", а если USBTXP = 1 и USBTXN = 0, то - логическая "1".
Рис. 5.64. Схема подключения USB-контрол-лера в МРС823 к внешнему
трансиверу
536
ОРГАНИЗАЦИЯ КОММУНИКАЦИОННЫХ ПРОЦЕССОРНЫХ МОДУЛЕЙ В КМК
Некоторые трансиверы имеют дополнительные линии определения текущей
скорости передачи или перехода в режим пониженного энергопотребления
(sleep, suspend), в этом случае управление данными сигналами можно
выполнять программно через контакты параллельного порта ввода/вывода.
Процесс приема и передачи в сети USB. USB - полностью контролируемая
хостом шина. В системе USB может быть только один хост. Любая транзакция
в ней осуществляется передачей до трех пакетов. Хост в соответствии с
определенной временной диаграммой посылает USB-устройству пакет-маркер
(token), описывающий тип и направление транзакции, адрес USB-устройства и
номер конечной точки. Устройства USB проверяют, кому адресовано
сообщение, декодируя соответствующие поля адреса. Направление передачи
данных определено в маркерном пакете.
Устройства USB только отвечают на запросы хоста и не могут передавать
информацию друг другу. Фактически может быть только один случай, когда
устройство может инициировать передачу без активности хоста. После
перевода хостом устройства в режим пониженного энергопотребления
устройство может сигнализировать о своем пробуждении.
Затем источник транзакции посылает пакет данных (data packet) или
сообщает, что данных для передачи нет. Получив пакет данных, адресат
пакет квитирования (handshake packet), который сообщает, была ли передача
успешной.
После системного сброса USB-контроллер имеет адрес 0x00 и хост должен
определить новый адрес USB-устройства.
Для этого после разрешения работы USB-контроллер прослушивает шину и
ожидает получение корректного кадра маркера (token). Некорректные маркеры
игнорируются. Маркер считается некорректным, если его длина не равна 3
байтам, или в случае неправильной CRC (контрольной суммы), или если поле
идентификаторов РЮ содержит некорректные данные. Маркеры могут быть
четырех типов:
1) Setup token - при получении этого маркера начинается процедура
конфигурирования устройств или обмен информацией о статусе;
2) IN tokenm - при получении данного маркера начинается передача
подготовленных данных от USB-устройства к host-устройству;
3) OUT token - при получении этого маркера USB-устройство начинает прием
данных;
4) SOF token.
Процесс реконфигурирования USB-устройства начинается при приеме маркера
SETUP token, поступающего на конечную точку, которая определена как
Control Endpoint. Маркер SETUP обычно содержит код команды, которую
должно выполнить USB-устройство. Если тип SETUP-пакета требует приема
последующих данных, то USB-контроллер выполняет прием данных так же, как
и после приема маркера OUT. Если тип SETUP-пакета требует передачи
некоторых данных хосту, то USB-контроллер выполняет передачу данных так
же, как и после приема маркера IN.
При получении SETUP-маркера контроллер анализирует тип команды, которая
содержится в маркере. Если это команда Set Address, и контроллер работает
в режиме Slave, то контроллер принимает следующий пакет, который содержит
назначенный хостом новый адрес USB-устройства и переписывает значение
адреса в поля SAD регистра USADR (рис. 5.65), который располагается в
памяти по адресу (IMMR & OxFFFFOOOO) + 0хА01.

SAD
Рис. 5.65. Формат регистра адреса Slave USB-устройства
КОММУНИКАЦИОННЫЕ МИКРОКОНТРОЛЛЕРЫ И СИСТЕМЫ НА ИХ ОСНОВЕ
Подключение USB-устройств в сеть. Все устройства USB присоединяются к
USB-шине через порт специализированного устройства - USB-концентратора.
Концентраторы анализируют состояние порта и определяют, присоединено или
удалено устройство. Если обнаружено новое подключенное устройство, то
концентратор уведомляет об этом хост. Далее хост посылает запрос
концентратору, чтобы определить причину уведомления. Концентратор
отвечает, указывая номер используемого порта, к которому присоединено
USB-устройство. Хост через порт создает канал связи с USB-устройством,
используя заданный по умолчанию адрес (Default Address = 0), который
действовал при первом соединении или после сброса, и конечную точку с
номером "0". Хост посылает запрос Get_Descriptor/Device на адрес "0"
контрольной точки "0".
Устройство обязательно отвечает на запрос, посылая байты идентификатора
обратно хосту, говорящие, какое устройство подключено.
Хост определяет, является ли недавно присоединенное устройство USB
концентратором или функцией, и посылает устройству запрос Set_Address,
Предыдущая << 1 .. 295 296 297 298 299 300 < 301 > 302 303 304 305 306 307 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed