Универсальный синхронный интерфейс USI. (Лекция 16)

Содержание

Слайд 2

Универсальный синхронный интерфейс USI Модуль USI может использовать следующие выводы МК:

Универсальный синхронный интерфейс USI

Модуль USI может использовать следующие выводы МК:
PB5 (MOSI/SDA)

– линия данных (выход мастера или двунаправленная линия)
PB6 (MISO) – линия данных (вход мастера)
PB7(SCK/SCL) – тактовый сигнал

Модуль USI может формировать запросы на следующие прерывания:
USI START– обнаружено состояние START (в двупроводном режиме)
USI OVERFLOW– переполнение внутреннего таймера модуля USI

Модуль USI содержит следующие регистры ввода/вывода:
USICR – регистр управления
USISR – регистр статуса
USIDR – регистр данных
USIBR – буферный регистр

Слайд 3

Универсальный синхронный интерфейс USI Рис. 2 – Описание регистра USICR Бит

Универсальный синхронный интерфейс USI

Рис. 2 – Описание регистра USICR

Бит 7 —

USISIE: Разрешение прерывания по стартовому условию.
Бит 6 — USIOIE: Разрешение прерывания по переполнению счетчика.
Бит 5..4— USIWM1..0: Выбор режима (двухпроводный/трехпроводный). При помощи этих двух битов выбирается режим работы USI. Эти биты, в основном, влияют лишь на процесс вывода информации.
Бит 3..2 — USICS1..0: Выбор источника тактового сигнала. Эти биты позволяют выбирать источник тактового сигнала для сдвигового регистра и четырехразрядного счетчика.
Бит 1 — USICLK: Строб синхронизации. Если биты USICSL0 установлены в ноль, выбран режим разрешения программного стробирования; то запись единицы в этот разряд вызывает сдвиг информации в сдвиговом регистре на один шаг и увеличивает значение 4-разрядного счетчика на единицу.
Бит 0 — USITC: Переключение значения тактового сигнала. Запись единицы в этот разряд переключает значение линии USCK/SCL с нуля на единицу или с единицы на ноль. Переключение сигнала на выходе происходит вне зависимости от установленного направления передачи информации для этой линии порта.
Если необходимо, чтобы на выход поступал сигнал с регистра PORTB, разряд DDRB4 должен быть установлен в единицу (режим вывода информации). Эта особенность позволяет простым способом осуществлять программную генерацию тактового сигнала при работе микросхемы в качестве ведущего устройства.
Слайд 4

Универсальный синхронный интерфейс USI Рис. 3 – Описание регистра USISR Бит

Универсальный синхронный интерфейс USI

Рис. 3 – Описание регистра USISR

Бит 7 —

USISIF: Флаг прерывания по обнаружению стартового условия. Если выбран двухпроводный режим работы, то флаг USISIF устанавливается (в единицу), если обнаружено стартовое условие. Если выбран режим отключения выхода или в трехпроводном режиме выбрана одна из комбинаций битов (USICSx = 0b11 и USICLK = 0 или USICS = 0b10 и USICLK = 0), то флаг устанавливается по любому фронту на входе SCK.
Бит 6 — USIOIF: Флаг прерывания по переполнению счетчика.
Этот флаг устанавливается (в единицу) в том случае, когда переполняется 4-разрядный счетчик (то есть при переходе его содержимого от 15 к 0).
Бит 5 — USIPF: Флаг обнаружения стоп-условия. Если выбран двухпроводный режим, флаг USIPF устанавливается (в единицу) в том случае, когда обнаружено стоп-условие. Флаг сбрасывается путем записи в него единицы. Этот флаг не является флагом прерывания.
Бит 4 — USIDC: Коллизия при выводе данных. Значение этого бита устанавливается в единицу, если значение 7-го разряда сдвигового регистра отличается от физического значения сигнала на выходном контакте микросхемы. Флаг действителен только в двухпроводном режиме и полезен при осуществлении ведущим устройством арбитража и управления шиной в двухпроводном режиме.
Биты 3...0 — USICNT3...0: Содержимое 4-разрядного счетчика. Эти биты отражают текущее значение 4-разрядного счетчика. Центральный процессор при помощи этих битов может непосредственно читать или записывать значение 4-разрядного счетчика.
Приращение 4-разрядного счетчика на единицу происходит:
- от каждого тактового импульса, получаемого детектором фронтов внешнего тактового сигнала, по переполнению таймера/ счетчика 0;
- программным путем посредством битов стробирования USICLK и USITC.
Слайд 5

Универсальный синхронный интерфейс USI Режимы работы модуля USI: трехпроводный (используется для

Универсальный синхронный интерфейс USI

Режимы работы модуля USI:
трехпроводный (используется для реализации интерфейса

SPI)
двухпроводный (используется для реализации интерфейса I2C или TWI)

Источники тактового сигнала сдвигового регистра и счетчика:
программное управление выводом PB7 при помощи регистра PORTB;
программное управление при помощи разряда USITC;
переполнение таймера Т0.

Слайд 6

Универсальный синхронный интерфейс USI Трехпроводный режим работы – интерфейс SPI Рис.

Универсальный синхронный интерфейс USI

Трехпроводный режим работы – интерфейс SPI

Рис. 5 –

Различные режимы работы SPI

Рис. 4 – Внутренняя организация SPI

Слайд 7

Универсальный синхронный интерфейс USI Рис. 6 – Конфигурация модуля в трехпроводном

Универсальный синхронный интерфейс USI

Рис. 6 – Конфигурация модуля в трехпроводном режиме

Рис.

7 – Временная диаграмма работы модуля в трехпроводном режиме
Слайд 8

Универсальный синхронный интерфейс USI Двухпроводный режим работы – интерфейс I2C или

Универсальный синхронный интерфейс USI

Двухпроводный режим работы – интерфейс I2C или TWI

Рис.

8 – Физическая структура подключения абонентов

Рис. 9 – Формат операций Записи/Чтения

Слайд 9

Универсальный синхронный интерфейс USI Рис. 10 – Конфигурация модуля в двупроводном

Универсальный синхронный интерфейс USI

Рис. 10 – Конфигурация модуля в двупроводном режиме

Рис.

11 – Временная диаграмма работы модуля в двухпроводном режиме
Слайд 10

Модуль двупроводного интерфейса TWI Рис. 12 – Функциональная схема модуля TWI

Модуль двупроводного интерфейса TWI

Рис. 12 – Функциональная схема модуля TWI