21.12. Описание регистров
21.12.1. Общие регистры USB
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
|
UHWCON |
Чтение/запись |
Чт./Зп. |
Чт./Зп. |
Чт. |
Чт./Зп. |
Чт. |
Чт. |
Чт. |
Чт./Зп. |
Исх. значение |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
- 7 - UIMOD: бит режима USB
Данный бит не оказывает никакого влияния, когда установлен бит UIDE (активирует внешний вывод UID). Установите бит, когда необходимо выбрать режим Device, и сбросьте, когда нужен режим Host.
- 6 - UIDE: разрешение работы вывода UID
Установите этот бит для разрешения работы логики выбора режима USB (Device/host) через вывод UID. Сбросьте этот бит при необходимости выбора режима USB (Device/host) битом UIMOD.
Изменение бита UIDE необходимо выполнять, только когда USB-интерфейс отключен (бит USBE равен 0).
При чтении данного бита всегда возвращается 0. Не устанавливайте данный бит.
- 4 - UVCONE: разрешение работы вывода UVCON
Установите бит при необходимости разрешения работы выхода управления UVCON. Сбросьте его для отключения вывода управления UVCON. Данный бит необходимо устанавливать только при активном интерфейсе USB.
При чтении данных бит всегда возвращаются нули. Не устанавливайте данные биты.
- 0 - UVREGE: разрешение работы встроенного стабилизатора напряжения
Установите (сбросьте) этот бит для включения (отключения) встроенного стабилизатора напряжения.
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
USBE |
HOST |
FRZCLK |
OTGPADE |
- |
- |
IDTE |
VBUSTE |
|
USBCON |
Чтение/запись |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт. |
Чт. |
Чт./Зп. |
Чт./Зп. |
Исх. значение |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
- 7 - USBE: разрешение работы USB-контроллера
Установите бит для разрешения работы USB-контроллера. Сбросьте бит отключения сброса USB-контроллера, для отключения USB-трансивера и для отключения входов синхронизации USB-контроллера.
Установите бит для выбора режима Host. Сбросьте бит для выбора режима Device.
- 5 - FRZCLK: бит остановки синхронизации USB-контроллера
Установите бит для отключения входов синхронизации (функция обнаружения возобновления "Resume Detection" остается активной). Это позволяет снизить потребляемый ток. Сбросьте бит для разрешения работы входов синхронизации.
- 4 - OTGPADE: разрешение работы вывода OTG
Установите этот бит для разрешения работы вывода OTG. Сбросьте бит для отключения вывода OTG. Вывод OTG фактически находится там же где и VBUS.
Обратите внимание, что данный бит можно установить/сбросить даже если USBE=0. Это позволяет контролировать VBUS, даже когда USB-контроллер отключен. Работу вывода можно разрешить как в режиме Host, так и в режиме Device, чтобы способствовать работе интерфейса USB (присоединение к шине, передача, ...).
При чтении данных бит всегда возвращаются нули. Не устанавливайте эти биты.
- 1 - IDTE: бит разрешения прерывания по изменению состояния ID
Установите данный бит для разрешения генерации прерывания по изменению состояния вывода ID. Сбросьте бит для запрета генерации этого прерывания.
- 0 - VBUSTE: бит разрешения прерывания по изменению VBUS
Установите (сбросьте) этот бит для разрешения (запрета) генерации прерывания по изменению VBUS.
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
|
USBSTA |
Чтение/запись |
Чт. |
Чт. |
Чт. |
Чт. |
Чт. |
Чт. |
Чт. |
Чт. |
Исх. значение |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
При чтении данных бит всегда возвращаются нули. Не устанавливайте данные биты.
- 3 - SPEED: флаг статуса скорости
Его необходимо опрашивать, только когда USB-контроллер работает в режиме Host; в режиме Device состояние данного бита является неопределенным.
Устанавливается и сбрасывается аппаратно, когда контроллер работает в режиме FULL-SPEED (FS) и LOW-SPEED (LS), соответственно.
При чтении данного бита всегда возвращается 0. Не устанавливайте данный бит.
- 1 - ID: флаг статуса вывода IUD
Считанное из данного бита значение индицирует состояние вывода UID.
- 0 - VBUS: флаг статуса вывода VBus
Считанное из данного бита значение индицирует состояние вывода VBUS. Данный бит можно использовать в режиме Device для контроля состояния подключения шины USB. Подробности см. в разделе 21.10.
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
|
USBINT |
Чтение/запись |
Чт. |
Чт. |
Чт. |
Чт. |
Чт. |
Чт. |
Чт./Зп. |
Чт./Зп. |
Исх. значение |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
При чтении данных бит всегда возвращается 0. Не устанавливайте данные биты.
- 1 - IDTI: флаг прерывания по изменению состояния вывода ID
Устанавливается аппаратно при обнаружении изменения состояния (переход из высокого состояния в низкое или наоборот) вывода UID. Необходимо сбросить программно.
- 0 - VBUSTI: флаг прерывания по изменению состояния VBUS
Устанавливается аппаратно при обнаружении изменения состояния (переход из высокого состояния в низкое или наоборот) на выводе VBUS. Должен быть сброшен программно.
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
- |
- |
HNPREQ |
SRPREQ |
SRPSEL |
VBUSHWC |
VBUSREQ |
VBUSRQC |
|
OTGCON |
Чтение/запись |
Чт. |
Чт. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Исх. значение |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
При чтении данных бит всегда возвращаются 0. Не устанавливайте данные биты.
- 5 - HNPREQ: бит запроса HNP
Установите данный бит для инициации HNP, когда контроллер работает в режиме Device (сторона B). Установите данный бит для приема HNP, когда контроллер работает в режиме Host (сторона A). В иных случаях, удерживайте бит в нулевом состоянии.
- 4 - SRPREQ: бит запроса SRP
Установите бит для инициации SRP, когда контроллер работает в режиме Device. Сбрасывается аппаратно, когда контроллер инициирует SRP.
- 3 - SRPSEL: бит выбора SRP
Установите для выбора генерации импульсов на VBUS в качестве метода SRP. Сбросьте для выбора генерации импульсов на линии данных как метода SRP.
- 2 - VBUSHWC: бит аппаратного управления VBus
Установите этот бит для отключения аппаратного управления выводом UVCON. Сбросьте бит для разрешения аппаратного управления выводом UVCON.
- 1 - VBUSREQ: бит запроса VBUS
Установите этот бит при необходимости перевода вывода UVCON в состояние, которое разрешает генерацию напряжения VBUS. Данный бит необходимо использовать, когда контроллер работает в режиме Host. Сбрасывается аппаратно, когда установлен бит VBUSRQC.
- 0 - VBUSRQC: бит отмены запроса VBUS
Установите данный бит для отключения функции UVCON управления разрешением генерации напряжения питания VBUS. Данный бит необходимо использовать только при работе контроллера в режиме Host. Сбрасывается аппаратно сразу после установки.
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
|
OTGCON |
Чтение/запись |
Чт. |
Чт./Зп. |
Чт./Зп. |
Чт. |
Чт. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Исх. значение |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Данный бит является резервным и всегда равен 1.
- 6-5 - PAGE: бит доступа к странице таймера
Установите (сбросьте) бит для доступа к специальному регистру таймера. Подробности см. в 21.9.
При чтении данных бит всегда возвращается 0. Не устанавливайте эти биты.
- 1-0 - VALUE: бит значения
Установите для инициализации нового значения таймера. Подробности см. в 21.9.
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
- |
- |
STOE |
HNPERRE |
ROLEEXE |
BCERRE |
VBERRE |
SRPE |
|
OTGIEN |
Чтение/запись |
Чт. |
Чт. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Исх. значение |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
При чтении данных бит всегда возвращаются 0. Не устанавливайте данные биты.
- 5 - STOE: бит разрешения прерывания по истечению времени в режиме SUSPEND
Установите (сбросьте) для разрешения (запрета) прерывания.
- 4 - HNPERRE: бит разрешения прерывания по ошибке HNP
Установите (сбросьте) для разрешения (запрета) прерывания HNPERRI.
- 3 - ROLEEXE: бит разрешения прерывания при изменении роли
Установите (сбросьте) для разрешения (запрета) прерывания ROLEEXI.
- 2 - BCERRE: бит разрешения прерывания по ошибке подключения стороны B
Установите (сбросьте) для разрешения (запрета) прерывания BCERRI.
- 1 - VBERRE: бит разрешения прерывания по ошибке VBus
Установите (сбросьте) для разрешения (запрета) прерывания VBERRI.
- 0 - SRPE: бит разрешения прерывания SRP
Установите (сбросьте) для разрешения (запрета) прерывания SRPI.
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
- |
- |
STOI |
HNPERRI |
ROLEEXI |
BCERRI |
VBERRI |
SRPI |
|
OTGINT |
Чтение/запись |
Чт. |
Чт. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Чт./Зп. |
Исх. значение |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
При чтении данных бит всегда возвращаются 0. Не устанавливайте данные биты.
- 5 - STOI: флаг прерывания по истечению времени в режиме SUSPEND
Устанавливается аппаратно по истечении выдержки времени (более 150 мс) после обнаружения состояния SUSPEND. Необходимо сбросить программно.
- 4 - HNPERRI: флаг ошибки прерывания HNP
Устанавливается аппаратно, когда обнаруживается ошибка по ходу осуществления протокола HNP. Необходимо сбросить программно.
- 3 - ROLEEXI: флаг прерывания по изменению роли
Устанавливается аппаратно, когда USB-контроллер успешно изменил свой режим работы вследствие негоциации HNP: Host-->Device или Device-->Host. Тем не менее, бит выбора режима (Host/Device) остается неизменным и его необходимо изменить программно, чтобы достигнуть нужных ячеек ОЗУ и бит событий. Необходимо сбросить программно.
- 2 - BCERRI: флаг прерывания по ошибке подключения стороны B
Устанавливается аппаратно, когда обнаруживается ошибка в ходе подключения стороны B (т.е. когда не обнаруживается подключение Device-системы в течение 300 мс существования Vbus). Необходимо сбросить программно.
- 1 - VBERRI: флаг прерывания по ошибке VBus
Устанавливается аппаратно при обнаружении падения на VBus. Необходимо сбросить программно.
- 0 - SRPI: флаг прерывания SRP
Устанавливается аппаратно, когда обнаруживается SRP. Должен использоваться только в режиме Host. Необходимо сбросить программно.
|