- •Конспект лекций оглавление
- •Общие с ведения о микроконтроллерах
- •Обобщенная структурная схема микроконтроллера
- •Система прерываний
- •Работа системы прерываний
- •Стек данных
- •Микроконтроллеры Intel, Motorola и Microchip
- •Краткое описание особенностей микроконтроллеров
- •Работа сср в режиме шим
- •Примеры контроллеров 18еххх, 16еххх. Характеристики 16 и 18 серии.
- •Периферийные модули
- •Основные характеристики микроконтроллеров
- •Рекомендации по схематическому решению для портов (16 серия)
- •Структура памяти
- •Банк памяти быстрого доступа
- •Регистр выбора банка памяти данных bsr (18 серия)
- •Косвенная адресация, регистра indf и fsr
- •Операция косвенной адресации
- •Механизм косвенной адресации
- •Работа с памятью рiс16fххх
- •Чтение из еерrом-памяти
- •Запись еерrом данных
- •Управление прерываниями Серия рiс16ххх
- •Система прерывании рiс18fхх2
- •Обработка прерываний
- •Контроллеры pic16f87x
- •Карта памяти микроконтроллеров:
- •Структурная схема микроконтроллеров pic16f87x:
- •Служебные регистр:
- •Контроллеры 18 серии
- •Карта памяти микроконтроллеров рiс18f242/442:
- •Регистры конфигурации контроллера:
- •Аппаратный умножитель 8х8
- •Модуль ацп
- •Конфигурация выводов модуля ацп (рiс16f873/76)
- •Источник опорного напряжения
- •Параллельные порты ввода/вывода
- •Последовательный синхронный порт (мssр)
- •Временные диаграммы работы mssp
- •Пример соединения двух мк через spi
- •Режим i2c последовательного порта mssp.
- •Асинхронно-синхронный последовательный порт (usart)
- •Временные диаграммы работы usart в асинхронном режиме
- •Ведомый параллельный порт (psp)
- •Временные диаграммы порта psp
- •Способы кодирования данных
- •Универсальная последовательная шина (usb) Краткий обзор шины
- •Протоколы передачи
- •Питание
- •Оконечные точки
- •Нумерация устройств
- •Описатели
- •Классы устройств / Драйверы класса
- •Микроконтроллеры с модулем usb
- •Приемопередатчик
- •Регистры управления и состояния модуля usb
- •Регистр флагов прерываний модуля usb (uir)
- •Регистр разрешения прерываний модуля usb (uie)
- •Регистр флагов ошибок модуля usb (ueir)
- •Регистр разрешения прерывания по ошибкам модуля usb (ueie)
- •Регистр состояния модуля usb (ustat)
- •Регистр управления модулем usb (uctrl)
- •Регистр адреса usb (uaddr)
- •Регистр состояния программного обеспечения usb
- •Регистры управления оконечными точками (uepn)
- •Буферы оконечных точек
- •Программирование модуля usb
- •Программное обеспечение usb
- •Основные функции и подпрограммы
- •Ресурсы процессора
- •Уровни стека
- •Память программ
- •Память данных
- •Буферные регистры
- •Выбор страниц/Выбор банков
- •Интегрирование подпрограмм usb в программу
Регистр управления модулем usb (uctrl)
Регистр управления модулем USB обеспечивает управление модулем и содержит информацию о его конфигурации.
U-0 |
U-0 |
R - X |
R/C - X |
R/W - X |
R/W - X |
R/W - X |
U-0 |
- |
- |
SE0 |
PKT_DIS |
DEV_ATT |
RESUME |
SUSPND |
- |
7 |
|
|
|
|
|
|
0 |
Регистр управления USB: «UCTRL» (адрес 195h)
R = читаемый разряд,
W - записываемый разряд,
U = зарезервированный разряд,
С - сбрасываемый разряд,
- n = значение после сброса,
X - не определено
Разряды 7-6: Зарезервированы, читаются как «0».
Разряд 5: SE0: Метод синхронизации с несимметричным нулем. Этот бит состояния указывает, что на обоих линиях D + и D- установлен низкий уровень.
1 = получен несимметричный нуль
0 = несимметричный нуль не получен
Разряд 4: PKT_DIS: Устанавливается, если получен маркер установки, и сообщает, что передача или прием пакета отключены и позволяет программному обеспечению убрать из очереди отложенные пакеты перед продолжением обработки маркера. Очистка этого бита позволяет продолжать обработку маркера. Этот бит не установлен по каждому маркеру установки и может изменяться, только если SUSPND = 0 (UCTRL).
Разряд 3: DEV_ATT: Управление выходом VUSB .
1 = выход VUSB включен (напряжение 3,3 В).
0 = выход VUSB отключен
(выводы D+ и D- в состоянии высокого сопротивления).
Разряд 2: RESUME: Передача сигнала RESUME позволяет выполнять удаленное пробуждение ведущего USB. Для запуска удаленного пробуждения программное обеспечение должно установить RESUME в «1» на 10 мс, а затем сбросить его в 0.
1 = выполнить передачу сигнала
0 = нормальная работа.
Разряд 1: SUSPND: Приостанавливает операции USB и переводит модуль в режим малого потребления. Этот бит устанавливается в ответ на прерывание UIDLE и сбрасывается после прерывания ACTIVITY. Уровень на VUSB будет отличным по сравнению с нормальной работой.
Выход VUSB будет открыт, но выводы приемопередатчика заблокированы.
1 = модуль USB в режиме малого потребления.
0 = модуль USB включен.
Разряд 0: Зарезервирован, читается как «0».
Регистр адреса usb (uaddr)
Регистр адреса (UADDR) содержит 7-разрядный уникальный адрес устройства на шине USB.
Регистр сбрасывается в 0 после сброса микроконтроллера или после приема сигналов сброса на шине USB. Это обеспечивается для соответствия со спецификацией USB, не сконфигурированные устройства должны отвечать на обращение с адресом 0. Адрес USB записывается главной ЭВМ во время фазы u1091 установки USB.
U-0 |
R/W - 0 |
R/W - 0 |
R/W - 0 |
R/W - 0 |
R/W - 0 |
R/W - 0 |
R/W - 0 |
- |
ADDR6 |
ADDR5 |
ADDR4 |
ADDR3 |
ADDR2 |
ADDR1 |
ADDR0 |
7 |
|
|
|
|
|
|
0 |
Регистр адреса USB: «UADDR» (адрес 196h)
R = читаемый разряд,
W - записываемый разряд,
U = зарезервированный разряд,
- n = значение после сброса:
Разряд 7: Зарезервирован, читается как «0».
Разряды 6-0: ADDR<6:0>: 7-разрядный адрес USB.