В HTML      В PDF
микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная страница > Обзоры по типам > Микроконтроллеры > AVR

реклама

 
радиационно стойкие ПЗУ Миландр

Продажа силового и бронированного кабеля и провода в Москве




Arduino Uno R3 Atmega328
готовый модуль
Лучшая Цена 335 руб




Стартовый набор с большим набором аксесуаров
Arduino Uno R3 Atmega328
Лучшая Цена 2211 руб



21.8. Подвешенное (suspend) состояние выводов

Нижеприведенные рисунки иллюстрируют состояния выводов:

  • в режиме idle выводы переводятся в состояние с низким потреблением,
  • в активном режиме выводы работают в обычном режиме.

Состояния выводов
Рисунок 21.15. Состояния выводов

Флаг SUSPI показывает, что на шине USB обнаружено состояние приостановки (suspend). Этот флаг автоматически переводит USB выводы в режим Idle. Обнаружение события, соответствующего не-idle режиму, приводит к установке флага WAKEUPI, что, в свою очередь, приводит к переводу USB выводов в активный режим.

Более того, выводы могут быть переведены в режим idle, если установлен бит DETACH. Выводы переводятся в активный режим, когда бит DETACH сбрасывается.

21.9. Настройка таймеров OTG

Есть возможность уточнения некоторых таймеров OTG благодаря регистру OTGTCON, который содержит биты PAGE для выбора таймера и биты VALUE для установки значения. Пользователю следует обратиться к последней спецификации OTG для выбора подходящих временных интевалов.

  • PAGE=00b: таймаут AwaitVrise [OTG]. В режиме хоста, если VBUSREQ был установлен в "1", но на выводе VBUS не обнаружено соответствующего уровня напряжения после задержки AwaitVrise, то устанавливается флаг ошибки VBERRI.
    • VALUE=00b тайм-аут устанавливается равным 20 мс
    • VALUE=01b тайм-аут устанавливается равным 50 мс
    • VALUE=10b тайм-аут устанавливается равным 70 мс
    • VALUE=11b тайм-аут устанавливается равным 100 мс
  • PAGE=01b: VbBusPulsing. [OTG]. В режиме устройства эта задержка соответствует длительности импульса на Vbus в течение SRP.
    • VALUE=00b тайм-аут устанавливается равным 15 мс
    • VALUE=01b тайм-аут устанавливается равным 23 мс
    • VALUE=10b тайм-аут устанавливается равным 31 мс
    • VALUE=11b тайм-аут устанавливается равным 40 мс
  • PAGE=10b: PdTmOutCnt. [OTG]. В режиме устройства, когда программное обеспечение запросило посылку SRP, это та задержка, которая осуществляется аппаратно после снижения напряжения на линии VBUS ниже уровня "session_valid" и до запуска первого импульса. Стоит учитывать, что эта задержка должна приблизительно соответстввать времени разрядки на USB линиях (соответствует резисторам, подтягивающим к земле, и емкости линии) для осуществления задержки до того, как напряжение на линии VBUS уменьшится ниже уровня "b_session_end", как определено в OTG спецификации.
    • VALUE=00b тайм-аут устанавливается равным 93 мс
    • VALUE=01b тайм-аут устанавливается равным 105 мс
    • VALUE=10b тайм-аут устанавливается равным 118 мс
    • VALUE=11b тайм-аут устанавливается равным 131 мс
  • PAGE=11b: SRPDetTmOut. [OTG]. В режиме хоста, эта задержка определяет минимальную длительность импульса, необходимую для обнаружения и приема корректного SRP от устройства.
    • VALUE=00b тайм-аут устанавливается равным 10 мкс
    • VALUE=01b тайм-аут устанавливается равным 100 мкс
    • VALUE=10b тайм-аут устанавливается равным 1 мс
    • VALUE=11b тайм-аут устанавливается равным 11 мс

21.10. Определение подключения

USB подключение определяется выводом VBUS благодаря следующей архитектуре:

Блок-схема модуля определения подключения
Рисунок 21.16. Блок-схема модуля определения подключения

Соотношение между физическим уровнем напряжения на выводе VBUS и его логическим значением:

  • Сигнал "Session_valid" устанавливается на высоком уровне при напряжении на выводе VBUS больше или равном 1.4 В. Если напряжение меньше 1.4 В, то сигнал соответствует низкому уровню.
  • Сигнал "Vbus_valid" устанавливается на высоком уровне при напряжении на выводе VBUS больше или равном 4.4 В. Если напряжение меньше 4.4 В, то сигнал соответствует низкому уровню.
  • Бит статуса VBUS устанавливается, если напряжении на VBUS больше, чем "Vbus_valid". Бит статуса VBUS сбрасывается, если напряжение на выводе VBUS ниже уровня "Session_valid" (гистерезис)
  • Флаг VBUSTI устанавливается каждый раз, когда бит статуса VBUS изменяется

21.10.1 Режим периферии (устройства)

USB устройство не может подключиться к шине пока бит VBUS не установлен.

21.10.2 Режим хоста

Хост должен использовтаь вывод UVCON для упрвления внешним переключателем или регулятором питания линии Vbus. На выводе UVCON автоматически устанавливается высокий уровень, когдк программно установлены биты UVCONE и VBUSREQ. Если устройство подсоединяется (подтяжка на линии DP или DM ) в течение 300 мс полсе начала питания Vbus, то устанавливается флаг DCONNI. Но, если бит VBUSREQ был установлен, а в течение 300 мс подключение устройства не обнаружено, то устанавливается флаг BCERRI (и возникает соответствующее прерывание), то питание Vbus прекращается (бит UVCON сбрасывается). Если такой порядок действий накладывает ограничения на работу хоста в некоторых приложениях, то можно предпринять слудующее:

  1. биты UVCONE and VBUSREQ должны быть сброшены,
  2. бит VBUSHWC должен быть установлен (для запрета аппаратного управления выводом UVCON)
  3. вывод . PORTE,7 (альтернативная функция вывод UVCON) должен быть программно установлен в 1,
  4. подключение устройства будет обнаружено благодаря флагу SRPI (который можно использовать для обнаружения импульса на линиях DP/DM, посланного OTG B-устройством для запроса новой сессии ).

21.11. Определение ID

Обнаружение изменения уровня напряжения на выводе ID происходит благодаря следующей архитектуре:

Блок-схема модуля определения ID
Рисунок 21.17. Блок-схема модуля определения ID

Вывод ID может быть использован для определения режима работы USB модуля (устройство или хост) или нет, режим работы вывода выбирается программно. Что позволяет использовать вывод UID как вывод общего назначения, даже если USB интерфейс работает. Когда выбрана работа вывода в качестве UID, по умолчанию (когда не обнаружено еще А- или В- подключения) контроллер находится в режиме устройства (внутренняя подтяжка). Прерывание IDTI возникает при А-подключении или отключении (хост). Прерывание не возникает при В-подключении или отключении. Определение ID не зависит от включения всего USB интерфейса.



<-- Предыдущая страница Оглавление Следующая страница -->





 
Впервые? | Реклама на сайте | О проекте | Карта портала
тел. редакции: +7 (495) 514 4110. e-mail:info@eust.ru
©1998-2016 ООО Рынок Микроэлектроники