В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

 
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации





Главная страница > Обзоры по типам > Микроконтроллеры > AVR
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации


22.18.2. Регистры конечных точек (режим Device)

Разряд 7 6 5 4 3 2 1 0  
 
- - - - - EPNUM2:0
UENUM
Чтение/запись Чт. Чт. Чт. Чт. Чт. Чт./Зп. Чт./Зп. Чт./Зп.
Исх. значение 0 0 0 0 0 0 0 0
  • 7-3 - Резерв

При опросе данных бит всегда возвращаются 0. Не устанавливайте данные биты.

  • 2-0 - EPNUM2:0 биты номера конечной точки

Загружается программно для выбора номера конечной точки, доступ к которой желает осуществить ЦПУ. Подробности см. в 22.5. EPNUM = 111b является запрещенным значением.

Разряд 7 6 5 4 3 2 1 0  
 
- EPRST6 EPRST5 EPRST4 EPRST3 EPRST2 EPRST1 EPRST0
UERST
Чтение/запись Чт. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп.
Исх. значение 0 0 0 0 0 0 0 0
  • 7 - Резерв

При опросе данного бита всегда возвращается 0. Не устанавливайте данный бит.

  • 6-0 - EPRST6:0 - биты сброса буфера FIFO конечной точки

Устанавливаются для сброса буфера FIFO выбранных конечных точек. Это необходимо сделать до выполнения каких-либо других операций после аппаратного сброса или приема по шине USB-сброса. Подробности см. в 22.3. Для завершения операции сброса и перехода к использованию конечных точек необходимо сбросить установленные биты.

Разряд 7 6 5 4 3 2 1 0  
 
- - STALLRQ STALLRQC RSTDT - - EPEN
UECONX
Чтение/запись Чт. Чт. Зп. Зп. Зп. Чт. Чт. Чт./Зп.
Исх. значение 0 0 0 0 0 0 0 0
  • 7-6 - Резерв

При опросе данных бит всегда возвращаются 0. Не устанавливайте данные биты.

  • 5 - STALLRQ - бит запроса отправки подтверждения STALL

Установите этот бит при необходимости отправки Host-стороне STALL в качестве следующего подтверждения. Сбрасывается аппаратно после приема нового запроса SETUP. Программный сброс не оказывает никакого влияния. Подробности см.в 22.11.

  • 4 - STALLRQC - бит отмены подтверждения запросом STALL

Установите данный бит для отключения механизма подтверждения STALL. Сбрасывается аппаратно сразу после установки. Подробности см. в 22.11.

  • 3 - RSTDT - бит сброса переключателя данных (Data Toggle)

Установите бит для автоматической отмены последовательности переключения данных. Для конечной точки OUT это означает, что следующий принятый пакет будет иметь переключатель данных равным 0. В свою очередь для конечной точки IN это означает, что у следующего подлежащего отправке пакета переключатель данных будет равен 0. Сбрасывается мгновенно аппаратными средствами. Программа не должна ожидать сброса этого бита. Программный сброс бита не оказывает никакого влияния.

  • 2, 1 - Резерв

При опросе данных бит всегда возвращаются 0. Не устанавливайте данные биты.

  • 0 - EPEN - бит разрешения работы конечной точки

Установите этот бит при необходимости разрешения работы конечной в соответствии с выполненной настройкой Device-контроллера. После аппаратного сброса или USB-сброса перед конфигурацией Device-контроллера должна быть разрешена работа конечной точки 0. Сброс этого бита отключит конечную точку. Подробности см. в 22.6.

Разряд 7 6 5 4 3 2 1 0  
 
EPTYPE1:0 - - - - - EPDIR
UECFG0X
Чтение/запись Чт./Зп. Чт./Зп. Чт. Чт. Чт. Чт. Чт. Чт./Зп.
Исх. значение 0 0 0 0 0 0 0 0
  • 7-6 - EPTYPE1:0 - биты типа конечной точки

Установите значения этих в соответствии с требуемой настройкой конечной точки.

Значение Тип конечной точки
00b CONTROL
01b BULK
10b ISOCHRONOUS
11b INTERRUPT
  • 3-2 - Зарезервировано для целей тестирования.

Данными битами всегда возвращается нулевое значение. Не устанавливайте данные биты.

  • 1 - Резерв

При чтении бита всегда возвращается 0. Не устанавливайте данный бит.

  • 0 - EPDIR - бит направления конечной точки

Установите бит для задания направления IN конечной точке типа BULK, INTERRUPT или ISOCHRONOUS. Сбросьте для задания конфигурации OUT конечной точке типа BULK, INTERRUPT, ISOCHRONOUS или CONTROL.

Разряд 7 6 5 4 3 2 1 0  
 
- EPSIZE2:0 EPBK1:0 ALLOC -
UECFG1X
Чтение/запись Чт. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт.
Исх. значение 0 0 0 0 0 0 0 0
  • 7 - Резерв

При чтении данного бита всегда возвращается 0. Не устанавливайте этот бит.

  • 6-4 - EPSIZE2:0 - биты размера конечной точки

Установите эти биты в соответствии с требуемым размером конечной точки.

Значение Размер Значение Размер
000b 8 байт 100b 128 байт1)
001b 16 байт 101b 256 байт1)
010b 32 байта 110b Резерв2)
011b 64 байта 111b Резерв2)

Прим.:

  1. Действительно только для конечной точки 1.
  2. Не используйте резервные значения.
  • 3-2 - EPBK1:0 - биты банка конечной точки

Настройте данное поле с учетом размера конечной точки.

Значение Размер
00b Один банк
01b Два банка
1xb Резерв1)

Прим.:

  1. Не используйте резервные значения.
  • 1 - ALLOC - бит назначения памяти конечной точки

Установите этот бит для назначения памяти конечной точки. Сброс бита приводит к освобождению памяти конечной точки. Подробности см. в 22.6.

  • 0 - Резерв

При чтении данного бита всегда возвращается 0. Не устанавливайте данный бит.

Разряд 7 6 5 4 3 2 1 0  
 
CFGOK OVERFI UNDERFI - DTSEQ1:0 NBUSYBK1:0
UESTA0X
Чтение/запись Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт. Чт. Чт. Чт.
Исх. значение 0 0 0 0 0 0 0 0
  • 7 - CFGOK - флага статуса конфигурации

Устанавливается аппаратно, когда параметры размера X (EPSIZE) и банка (EPBK) конечной точки согласованы с максимальным размером буфера FIFO и предельным числом банков. Обновление бита происходит после установки бита ALLOC. Если CFGOK=0, это означает, что пользователю необходимо заново записать регистр UECFG1X с корректными значениями EPSIZE и EPBK.

  • 6 - OVERFI - флаг прерывания по ошибке переполнения

Устанавливается аппаратно при обнаружении ошибки переполнения в конечной точке типа ISOCHRONOUS. Приводит к запуску прерывания (EPINTx), если таковое было разрешено. Подробности см. в 22.15. Должен быть сброшен программно. Попытка программной установки не дает никакого результата.

  • 5 - UNDERFI - флаг прерывания по ошибке незаполнения

Устанавливается аппаратно при обнаружении ошибки незаполнения в конечной точке типа ISOCHRONOUS. Приводит к запуску прерывания (EPINTx), если таковое было разрешено. Подробности см. в 22.15. Должен быть сброшен программно. Попытка программной установки не дает никакого результата.

  • 4 - Резерв

При чтении данного бита всегда возвращается 0. Не пытайтесь установить данный бит.

  • 3-2 - DTSEQ1:0 - флаг состояния переключателя данных

Устанавливается аппаратно для индикации данных идентификатора пакета (PID) для текущего банка.

Значение Данные
00b DATA 0
01b DATA 1
1xb Резерв

Для передачи типа OUT данное значение индицирует последнее значение переключателя данных, принятое текущим банком. В свою очередь для передачи типа IN оно индицирует значение переключателя данных, которое будет использоваться при отправке следующего пакета. К текущему банку оно отношения не имеет.

  • 1-0 - NBUSYBK1:0 - флаги занятости банка

Устанавливаются аппаратно для индикации количества занятых банков. Для конечной точки IN они индицируют количество занятых банков, которые заполнены пользователем и готовы для передачи типа IN. Для конечной точки OUT флаги индицируют количество занятых банков, которые заполнены Host-стороной в ходе транзакции типа OUT.

Значение Описание
00b Все банки свободны
01b Занят один банк
10b Занято два банка
11b Резерв


Разряд 7 6 5 4 3 2 1 0  
 
- - - - - CTRLDIR CURRBK1:0
UESTA1X
Чтение/запись Чт. Чт. Чт. Чт. Чт. Чт. Чт. Чт.
Исх. значение 0 0 0 0 0 0 0 0
  • 7-3 - Резерв

При чтении данных бит всегда возвращается значение 0. Не пытайтесь установить данные биты.

  • 2 - CTRLDIR - управление направлением (флаг, а также бит для отладочных целей)

Устанавливается аппаратно после пакета SETUP и задает направление следующего пакета:

  • 1 для конечной точки IN
  • 0 для конечной точки OUT.

Не пытайтесь программно устанавливать или сбрасывать данный бит.

  • 1-0 - CURRBK1:0 - флаги текущего банка (все конечные точки, кроме конечной точки CONTROL)

Устанавливается аппаратно для индикации номера текущего банка:

Значение Текущий банк
00b Банк 0
01b Банк 1
1xb Резерв

Не пытайтесь программно устанавливать или сбрасывать данные биты.

Разряд 7 6 5 4 3 2 1 0  
 
FIFOCON NAKINI RWAL NAKOUTI RXSTPI RXOUTI STALLEDI TXINI
UEINTX
Чтение/запись Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп.
Исх. значение 0 0 0 0 0 0 0 0
  • 7 - FIFOCON - бит управления буфером FIFO

У конечной точки OUT и SETUP данный бит устанавливается аппаратно после записи нового сообщения OUT в текущий банк (одновременно с RXOUT или RXSTP). Сбросьте этот бит для освобождения текущего банка и переключения к следующему банку. Попытка программной установки не оказывает никакого эффекта.

Применительно к конечной точке IN данный бит устанавливается аппаратно, когда освобождается текущий банк (одновременно с TXIN). Сбросьте FIFOCON для отправки данных FIFO и переключения данных. Программная установка не дает никакого результата.

  • 6 - NAKINI - флаг прерывания по отправке NAK в передаче типа IN

Устанавливается аппаратно, когда в ответ на запрос IN Host-стороны было отправлено подтверждение NAK. Если установлен бит NAKINE, это приводит к генерации USB-прерывания. Должен быть сброшен программно. Программная установка не оказывает никакого влияния.

  • 5 - RWAL - флаг возможности чтения/записи

Устанавливается аппаратно для сигнализации:

  • о незаполненности текущего банка (т.е. о возможности помещения новых данных в буфер FIFO) конечной точки IN;
  • о наличии данных в текущем банке (т.е. о потребности считывания данных из буфера FIFO) конечной точки OUT.

Бит никогда не устанавливается, если установлен бит STALLRQ или обнаружена ошибка. В остальных случаях бит равен нулю. Его нельзя использовать для конечной точки CONTROL.

  • 4 - NAKOUTI - флаг прерывания по приему NAK в передаче типа OUT

Устанавливается аппаратно, когда в ответ на запрос OUT/PING из Host-стороны было отправлено подтверждение NAK. Если бит NAKOUTE установлен, это приводит к запуску USB-прерывания. Должен быть сброшен программно. Программная установка не оказывает никакого влияния.

  • 3 - RXSTPI - флаг прерывания по приему SETUP

Устанавливается аппаратно для сигнализации о доступности нового действительного пакета SETUP в текущем банке. Приводит к запуску прерывания (EPINTx), если таковое было разрешено. Должен быть сброшен программно для подтверждения прерывания. Программная установка не оказывает никакого влияния.

Данный бит неактивен (равен 0), если конечная точка имеет направление IN.

  • 2 - RXOUTI / KILLBK - флаг прерывания по приему данных (передача типа OUT)

Устанавливается аппаратно для сигнализации о том, что в текущем банке содержится новый пакет. Запускает прерывание (EPINTx), если таковое было разрешено. Должен быть сброшен программно для подтверждения прерывания. Попытка программной установки не оказывает никакого влияния.

Бит ликвидации банка IN

Установите данный бит, чтобы ликвидировать последний записанный банк. Сбрасывается аппаратно после ликвидации банка. Программный сброс не оказывает никакого влияния. Подробности см. в 22.14.2.1.

  • 1 - STALLEDI - флаг прерывания STALLEDI

Устанавливается аппаратно для сигнализации об отправке подтверждения STALL или обнаружении ошибки CRC в конечной точке типа ISOCHRONOUS с направлением OUT. Должен быть сброшен программно. Программная установка не оказывает никакого влияния.

  • 0 - TXINI - флаг прерывания по готовности передатчика

Устанавливается аппаратно для сигнализации о готовности к заполнению текущего банка. Запускает прерывание (EPINTx), если таковое было разрешено. Должен быть сброшен программно для подтверждения прерывания. Программная установка не оказывает никакого влияния. Данный бит является неактивным (равен 0) для конечной точки с направлением OUT.

Разряд 7 6 5 4 3 2 1 0  
 
FLERRE NAKINE - NAKOUTE RXSTPE RXOUTE STALLEDE TXINE
UEIENX
Чтение/запись Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп.
Исх. значение 0 0 0 0 0 0 0 0
  • 7 - FLERRE - флаг разрешения прерывания по ошибке потока

Установите (сбросьте) для разрешения (запрета) прерывания конечной точки (EPINTx) по установке флага VERFI или UNDERFI.

  • 6 - NAKINE - флаг разрешения прерывания по отправке NAK в передаче типа IN

Установите (сбросьте) для разрешения (запрета) прерывания конечной точки (EPINTx) при установке флага NAKINI.

  • 5 - Резерв

При чтении данного бита всегда возвращается 0. Не пытайтесь установить данный бит.

  • 4 - NAKOUTE - бит разрешения прерывания по приему NAK в передаче типа OUT

Установите (сбросьте) для разрешения (запрета) прерывания конечной точки (EPINTx) по установке флага NAKOUTI.

  • 3 - RXSTPE - флаг разрешения прерывания по приему SETUP

Установите (сбросьте) для разрешения (запрета) прерывания конечной точки (EPINTx) по установке флага RXSTPI.

  • 2 - RXOUTE - флаг разрешения прерывания по приему данных в передаче типа OUT

Установите (сбросьте) для разрешения (запрета) прерывания конечной точки (EPINTx) по установке флага RXOUTI.

  • 1 - STALLEDE - флаг разрешения прерывания STALLEDI

Установите (сбросьте) для разрешения (запрета) прерывания конечной точки (EPINTx) по установке флага STALLEDI.

  • 0 - TXINE - флаг разрешения прерывания по готовности передатчика

Установите (сбросьте) для разрешения (запрета) прерывания конечной точки (EPINTx) по установке флага TXINI.

Разряд 7 6 5 4 3 2 1 0  
 
DAT D7 DAT D6 DAT D5 DAT D4 DAT D3 DAT D2 DAT D1 DAT D0
UEDATX
Чтение/запись Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп. Чт./Зп.
Исх. значение 0 0 0 0 0 0 0 0
  • 7-0 - DAT7:0 - биты данных

Используйте данные биты в программе для чтения (записи) байта из буфера (в буфер) FIFO конечной точки, выбранной битами EPNUM.

Разряд 7 6 5 4 3 2 1 0  
 
- - - - - BYCT D10 BYCT D9 BYCT D8
UEBCHX
Чтение/запись Чт. Чт. Чт. Чт. Чт. Чт. Чт. Чт.
Исх. значение 0 0 0 0 0 0 0 0
  • 7-3 - Резерв

При чтении данных бит всегда возвращаются нули. Не пытайтесь устанавливать данные биты.

  • 2-0 - BYCT10:8 - старшие биты счетчика байт

Устанавливаются аппаратно. В них хранятся старшие биты счетчика байт буфера FIF

  • конечной точки. Младший байт хранится в регистре UEBCLX.

    Разряд 7 6 5 4 3 2 1 0  
     
    BYCT D7 BYCT D6 BYCT D5 BYCT D4 BYCT D3 BYCT D2 BYCT D1 BYCT D0
    UEBCLX
    Чтение/запись Чт. Чт. Чт. Чт. Чт. Чт. Чт. Чт.
    Исх. значение 0 0 0 0 0 0 0 0
    • 7-0 - BYCT7:0 - младшие биты счетчика байт

    Устанавливаются аппаратно. Значение бит BYCT10:0:

    • (для конечной точки IN) инкрементируется после записи в конечную точку и декрементируется после отправки каждого байта;
    • (для конечной точки OUT) инкрементируется после отправки Host-стороной каждого байта и декрементируется после программного чтения каждого байта.
    Разряд 7 6 5 4 3 2 1 0  
     
    - EPINT D6 EPINT D5 EPINT D4 EPINT D3 EPINT D2 EPINT D1 EPINT D0
    UEINT
    Чтение/запись Чт. Чт. Чт. Чт. Чт. Чт. Чт. Чт.
    Исх. значение 0 0 0 0 0 0 0 0
    • 7 - Резерв

    При чтении данного бита всегда возвращается 0. Не пытайтесь установить данный бит.

    • 6-0 - EPINT6:0 - биты прерываний конечной точки

    Устанавливаются аппаратно, когда запускается прерывание регистром UEINTX и, при этом, установлен бит разрешения прерывания соответствующей конечной точки. Сбрасывается аппаратно по завершении обслуживания источника прерывания.



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