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

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

Агуров П.В. Интерфейсы USB. Практика использования и программирования — БВХ-Петербург, 2004. — 576 c.
ISBN 5-94157-202-6
Скачать (прямая ссылка): interfeysusbpraktikaispolzovaniya2004.djvu
Предыдущая << 1 .. 100 101 102 103 104 105 < 106 > 107 108 109 110 111 112 .. 168 >> Следующая

324
Часть IV. Создание USB-устройств
Рис. 13.2. Структурная схема АТ89С5131
13.2. USB-регистры АТ89С5131
Микроконтроллер АТ89С5131 содержит несколько ключевых регистров, с
помощью которых производится конфигурирование и обмен по интерфейсу
USB. Обычные регистры, присутствующие во всех контроллерах семейства
8051, мы не описываем.
13.2.1. Регистр USBCON
Регистр usbcon (байт, адрес ОхВС) - основной управляющий регистр USB-
модуля. После сброса регистр принимает значение 00000000b.
Регистр содержит следующие биты:
? [7] usbe - бит включения модуля USB. Установка бита включает USB-
контроллер. Сброс бита отключает и сбрасывает USB-контроллер;
? [6] suspclk - бит приостановки синхронизации USB. Установка бита
отключает вход 48 МГц синхроимпульсов (продолжение детектирования все еще
возможно). Сброс включает вход 48 МГц синхроимпульсов;
? [51 sdrmwup - бит передачи удаленного пробуждения. Устанавливается для
вызова внешнего прерывания USB-контроллера при удаленном пробуждении.
Резюме исходящего потока передается, если только бит rmwupe установлен,
все USB-синхроимпульсы активизированы и USB-шина на-
Глава 13. НЮ-устройство на основе Atmel АТ89С5131
325
ходилась в состоянии приостановки (состояние suspend) не менее 5 мс.
Сбрасывается программно;
? [4] зарезервирован. Всегда считывается как 0. Не пытайтесь установить
этот бит;
? [3] uprsm - резюме исходящего потока (только чтение). Устанавливается
аппаратно после установки бита sdrmwup, если бит rmwupe был также
установлен. Сбрасывается аппаратно после передачи резюме исходящего
потока;
? [2] rmwupe - бит разрешения удаленного пробуждения. Устанавливается для
разрешения запроса резюме исходящего потока ведущего устройства.
Сбрасывается после отображения резюме исходящего потока в rsminpr.
Замечание: не устанавливайте этот бит, если у ведущего устройства для
прибора не установлена функция device_remote_wakeup;
? [1] confg - конфигурационный бит. Устанавливается после корректной
обработки запроса set_configuration с ненулевым значением. Сбрасывается
программно после получения запроса set_configuration с нулевым значением.
Сбрасывается аппаратно при аппаратном сбросе или после обнаружения сброса
на шине USB;
? [0] fadden - бит разрешения функции адресации. Устанавливается
программным обеспечением прибора после успешного завершения транзакции
set_address. В последующем он не должен сбрасываться программно.
Сбрасывается аппаратно при аппаратном сбросе или после обнаружения сброса
на шине USB. Когда этот бит сброшен, используется функция адресации по
умолчанию (нулевая конечная точка).
Листинг 13.1 показывает описания и макросы для работы с регистром
USBCON.
№' .. " "
истинг 13.1. Регистр usbc
// Описание регистра
sfr USBCON = ОхВС;
II Описание констант для доступа к битам регистра
#define MSK_ _USBE 0x80 // Бит включения модуля USB
#define MSK_ SUSPCLK 0x40 // Бит приостановки синхронизации
USB
#define MSK_ _SDRMWUP 0x20 // Бит передачи удаленного
пробуждения
tdefine MSK_ J3ETACH 0x10 // Отключение от линйи
tdefine MSK_ UPRSM 0x08 // Бит резюме исходящего потока (г/о)
tdefine MSK_ RMWUPE 0x04 // Бит разрешения удаленного
пробуждения
tdefine MSK _CONFG 0x02 // Конфигурационный бит
tdefine MSK FADDEN 0x01 // Бит разрешения функции адресации
326
Часть IV. Создание USB-устройств
// Включение/выключение модуля USB
#define Usb_enable() (USBCON 1 = MSKJJSBE)
#define Usb disable() (USBCON &= ~MSK_USBE)
// Подключение/отключение от линии
fdefine Usb_detach() (USBCON 1 = MSK_DETACH)
fdefine Usb_attach() (USBCON &= ~MSK_DETACH)
// Конфигурационный бит
fdefine Usb_set_CONFG() (USBCON 1 = MSК CONFG)
fdefine Usb_clear CONFG() (USBCON &= ~MSK_CONFG)
// Бит разрешения функции адресации
fdefine Usb_set_FADDEN() (USBCON 1 = MSK_FADDEN)
fdefine Usb clear FADDEN() (USBCON &= ~MSK_FADDEN)
// Бит приостановки синхронизации USB
fdefine Usb set suspend clock() (USBCON 1 = MSK_SUSPCLK)
fdefine Usb_clear_suspend_clock() (USBCON &= ~MSK_SUSPCLK)
13.2.2. Регистр USBADDR
Регистр usBADDR (байт, адрес ОхСб) - регистр USB-адреса. После сброса
регистр принимает значение 00000000b.
Регистр содержит следующие биты:
[7] fen - бит активизации функции. Устанавливается для активизации
функции. Программное обеспечение прибора установит этот бит после приема
сброса USB и примет участие в текущем конфигурационном процессе с
установленным по умолчанию адресом (fen сбросится в 0);
[6:0] uadd6 : uaddo - биты USB-адреса. Эти биты содержат заданный по
умолчанию адрес после включения питания или сброса USB-шины. Запись их
состояния произойдет после принятия программным обеспечением прибора
запроса set_address.
Листинг 13.2 показывает описания и макросы для работы с регистром
USBADR.
// Описание регистра Sfr USBADDR = ОхСб;
// Описание констант для доступа к битам регистра #define MSК FEN 0x80
-i и
<• """r№w*r*
Глава 13. НЮ-устройство на основе Atmel АТ89С5131
327
11 Конфигурирование USB-адреса
Предыдущая << 1 .. 100 101 102 103 104 105 < 106 > 107 108 109 110 111 112 .. 168 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.