Раздел: Документация
0 ... 144 145 146 147 148 149 150 ... 195 вать об этом ведомого-передатчика, послав сигнал неподтверждения (NACK). Затем ведущий должен сформировать на шине состояние СТОП или ПОВСТАРТ. Формирование состояния СТОП начнется после записи в регистр TWCR следующего значения:
*-Разрешить работу модуля TWI -Сформировать состояние СТОП I-Сбросить флаг TWINT Для формирования состояния ПОВСТАРТ в регистр TWCR необходимо занести следующее значение:
Разрешить работу модуля TWI Сформировать состояние СТАРТ Сбросить флаг TWINT Таблица 11.9. Коды статуса для режима «Ведущий-приемник»
(продолжение)
Как уже было сказано, после формирования на шине состояния ПОВСТАРТ (код статуса $10) ведущий может адресовать того же или другого ведомого, не формируя состояния СТОП. Другими словами, использование состояния ПОВСТАРТ позволяет осуществлять смену ведомых уст- ройств, а также переключаться между режимами «Ведущий-передатчик» и «Ведущий-приемник» без потери контроля над шиной. Все возможные состояния модуля TWI в режиме «Ведущий-приемник» приведены на Рис. 11.17. Ведущий-приемник Успешный прием от ведомого-передатчика Следующая передача начинается с формирования состояния ПОВСТАРТ Нет подтверждения при адресации ведомого Потеря приоритета во время передачи адреса или данных Потеря приоритета, устройство адресовано другим ведущим sla Продолжает другой ведущий A DATA А Ведущий-передатчик Продолжает другой ведущий Продолжает другой ведущий $68y$78y$B0> К соответствующим состояниям в режиме ведомого S— состояние СТАРТ Rs— состояние ПОВСТАРТ Р— состояние СТОП R—запрос на чтение (1) W—запрос на запись(0) А— бит подтверждения (0) А~— бит неподтверждения (1) SLA— адрес ведомого устройства data О- От ведущего к ведомому От ведомого к ведущему Один или несколько байтов данных с соответствующими битами подтверждения момент установки флага TWINT, л — код статуса в регистре TWSR Рис. 11.17. Состояния модуля TWI в режиме «Ведущий-приемник» 0 ... 144 145 146 147 148 149 150 ... 195
|