8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 147 148 149 150 151 152 153 ... 195

(продолжение)

Код статуса

Состояние шины и модуля TWI

Действия программы

Следующее действие, выполняемое модулем TWJ

Чтение/запись в регистр TWDR

Запись в регистр TWCR

й

I

i

1

$В0

Потеря приоритета в режиме ведущего во время передачи SLA+R/W; был принят SLA+W с собственным адресом и послано подтверждение (АСК)

Загрузить данные

X

0

1

0

Будет передан последний байт данных; должно быть получено неподтверждение (NACK)

Загрузить данные

X

0

1

1

Будет передан очередной байт данных; должно быть получено подтверждение (АСК)

$В8

Был передан байт данных и получено подтверждение (АСК)

Загрузить данные

X

0

1

0

Будет передан последний байт данных; должно быть получено неподтверждение (NACK)

Загрузить данные

X

0

1

1

Будет передан очередной байт данных; должно быть получено подтверждение (АСК)

$С0

Был передан байт данных и получено не подтверждение (NACK)

Нет действий

0

0

1

0

Переключение в режим неадресованного ведомого; распознавание любых вызовов запрещено

Нет действий

0

0

1

1

Переключение в режим неадресованного ведомого; разрешено распознавание SLAс собственным адресом; разрешено распознавание общих вызовов, если TWGCE = 1

$С0

Был передан байт данных и получено неподтверждение (NACK)

Нет действий

1

0

1

0

Переключение в режим неадресованного ведомого; распознавание любых вызовов запрещено; после освобождения шины будет сформировано состояние СТАРТ


(продолжение)

Действия программы

Код статуса

Состояние шины и модуля TWI

Чтение/запись в регистр TWDR

Запись в регистр TWCR

Следующее действие, выполняемое модулем TWI

U

STO

TWINT

TWEA

Нет действий

1

0

1

1

Переключение в режим неадресованного ведомого; разрешено распознавание SLA с собственным адресом; разрешено распознавание общих вызовов, если TWGCE = 1;

после освобождения шины будет сформировано состояние СТАРТ

Нет действий

0

0

1

0

Переключение в режим неадресованного ведомого; распознавание любых вызовов запрещено

$С8

Был передан последний байт данных и получено подтверждение (АСК)

Нет действий

0

0

1

1

Переключение в режим неадресованного ведомого; разрешено распознавание SLA с собственным адресом; разрешено распознавание общих вызовов, если TWGCE=1

Нет действий

1

0

1

0

Переключение в режим неадресованного ведомого; распознавание любых вызовов запрещено; после освобождения шины будет сформировано состояние СТАРТ

Нет действий

1

0

1

1

Переключение в режим неадресованного ведомого; разрешено распознавание SLA с собственным адресом; разрешено распознавание общих вызовов, если TWGCE = 1;

после освобождения шины будет сформировано состояние СТАРТ


При передаче последнего байта данных необходимо сбросить бит TWEA в 0. После этого модуль перейдет в состояние с кодом статуса $С0 или $С8, в зависимости от того, какой сигнал (АСК или NACK) передаст ведущий в ответ. В состояние с кодом статуса $С8 модуль TWI перейдет в случае, если ведущий затребовал дополнительные данные, передав подтверждение (АСК), несмотря на то, что ведомый передал последний байт и ожидал сигнала NACK.

После перехода в любое из указанных состояний модуль TWI будет игнорировать обращения к нему ведущего. Соответственно, если ведущий будет продолжать обмен по шине, он будет постоянно принимать 1. Обработка адресных пакетов при сброшенном бите TWEA также прекращается, но может быть возобновлена в любой момент времени повторной установкой этого бита. Все возможные состояния модуля TWI в режиме «Ведомый-передатчик» приведены на Рис. 11.19.

Прием своего адреса и передача одного или более байтов данных

Потеря приоритета в режиме ведущего и адресация в качестве ведомого

SLA

Передан последний байт. Переключение в режим неадресованного ведущего (TWEA = 0)

А Р или S

Все 1

Р или S

[ $С8)

S— состояние СТАРТ

Rs— состояние ПОВСТАРТ

Р— состояние СТОП

R—запрос на чтение (1)

W—запросна запись(0)

А— бит подтверждения (0)

А~—бит неподтверждения (1)

SLA— адрес ведомого устройства

DATA

От ведущего к ведомому

От ведомого к ведущему

Один или несколько байтов данных

с соответствующими битами подтверждения

О

— момент установки флага TWINT, п — код статуса в регистре TWSR

Рис. 11.19. Состояния модуля TWI в режиме «Ведомый-передатчик»



0 ... 147 148 149 150 151 152 153 ... 195