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

 
Пересюхтюмя


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





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





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


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





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


30.5 Функциональное описание

30.5.1 Формат передачи

Выдаваемые на линию TWI данные должны иметь 8-битный формат. Первым передается СЗБ, прием каждого байта информации сопровождается подтверждением. Количество байт в передаче не ограничено (см. Рис. 30-4).

Каждая передача начинается с условия Старт и заканчивается условием Стоп (см. рис. 30-4).

  • Перепад высокий - низкий уровень на линии TWD при высоком уровне на TWCK определяется как условие Старт.
  • Перепад низкий - высокий на линии TWD при высоком уровне на TWCK определяется как условие Стоп.

Условия Старт и Стоп
Рис. 30-3. Условия Старт и Стоп

Формат передачи
Рис. 30-4. Формат передачи

30.5.2 Режимы работы

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

  • Режим ведущего устройства - передатчика
  • Режим ведущего устройства - приемника

Регистр управления (TWI_CR) дает возможность конфигурировать двухпроводной интерфейс в режиме ведущего. В этом режиме он генерирует частоту синхронизации в соответствии со значением, запрограммированным в Регистре формы сигнала синхронизации (TWI_CWGR). Этот регистр позволяет полностью определить параметры сигнал TWCK, позволяя интерфейсу работать в широком диапазоне тактовых частот.

30.5.3 Передача данных

После установки ведущим устройством условия Старт оно отсылает 7-битный адрес ведомого устройства, заданный в регистре Режима работы (DADR в TWI_MMR). Следующий за передачей адреса бит определяет направление передачи данных - прием или передача. Равенство этого бита 0 показывает, что будет осуществляться запись данных (операция передачи). Если же бит равен 1, запрашивается чтение данных (операция чтения).

Для работы двухпроводного интерфейса необходимо получение подтверждения о принятии каждого байта от ведомого устройства. Во время тактового импульса синхронизации, совпадающего с ожиданием подтверждения, ведущее устройство освобождает управление линией данных (на ней устанавливается высокий уровень), с тем, чтобы ведомое устройство могло установить на ней низкий уровень, выдавая таким образом уровень подтверждения. Ведущее устройство опрашивает линию данных во время этого импульса синхронизации, устанавливая бит NAK в Регистре состояния в случае, если ведомое устройство не выдало на линию сигнал подтверждения. Установка этого бита, как и некоторых других бит состояния, может генерировать прерывания, если это разрешено соответствующими установками в регистре разрешения прерываний интерфейса (TWI_IER). Передача начинается после записи в регистр хранения передачи (TWI_THR) и установки бита Старт в регистре управления. Данные последовательно выдаются на линию встроенным сдвиговым регистром, и при получении сигнала подтверждения производится установка бита TXRDY, который имеет высокий уровень до тех пор, пока не производится новая запись в регистр TWI_THR (см. Рис. 30-6). При завершения передачи ведущее устройство выдает на линию условие Стоп.

Последовательность чтения начинается установкой Старт-бита. При установке в 1 бита RXRDY в регистре состояния начинается прием пакет данных в регистр хранения приема (TWI_RHR). При считывании этого регистра бит RXRDY регистра TWI_RHR сбрасывается.

Двухпроводной интерфейс предоставляет возможность осуществлять передачу в различных форматах (7-битный адрес ведомого или 10-битный адрес ведомого). Три внутренних адресных бита можно конфигурировать с помощью регистра режима работы ведущего устройства (TWI_MMR). Если ведомое устройство поддерживает только 7-битную адресацию, IASDR должен быть установлен в 0. Для адреса ведомого более 7 бит, пользователь должен сконфигурировать размер адреса (IADRSZ) и установить другой адрес ведомого в регистре внутреннего адреса.

Запись ведущим устройством с одним, двумя или тремя байтами внутреннего адреса и одним байтом данных
Рис. 30-5. Запись ведущим устройством с одним, двумя или тремя байтами внутреннего адреса и одним байтом данных

Запись ведущим устройством с одним байтом внутреннего адреса и несколькими байтами данных
Рис. 30-6. Запись ведущим устройством с одним байтом внутреннего адреса и несколькими байтами данных

Чтение ведущим устройством с одним, двумя или тремя байтами внутреннего адреса и одним байтом данных
Рис. 30-7. Чтение ведущим устройством с одним, двумя или тремя байтами внутреннего адреса и одним байтом данных

Чтение ведущим устройством с одним байтом внутреннего адреса и несколькими байтами данных
Рис. 30-8. Чтение ведущим устройством с одним байтом внутреннего адреса и несколькими байтами данных

  • S = Старт
  • P = Стоп
  • W = Запись
  • R = Чтение
  • A = Подтверждение
  • N = Отсутствие подтверждения
  • DADR = Адрес устройства
  • IADR = Внутренний адрес

Рис. 30-9 показывает запись байта данных в ЭСППЗУ Atmel AT24LC512 (EEPROM). Показано применение внутреннего адреса для доступа у к устройству.

Использование внутреннего  адреса
Рис. 30-9. Использование внутреннего адреса

30.5.4 Диаграммы чтения/записи

Диаграммы, показанные на рис. 30-10 и 30-11, показывают примеры чтения и записи в режиме ведущего устройства. Для проверки бит состояния могут применяться как программный опрос, так применение прерываний. Для метода с использованием прерываний необходимо в первую очередь сконфигурировать регистр разрешения прерываний (TWI-IER).

Рис. 30-10 Запись в режиме ведущего

Чтение в режиме ведущего
Рис. 30-11. Чтение в режиме ведущего



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