Предыдущая Следующая

Код состояния (I2STAT)

Текущее состояние шины

12С и аппаратной логики интерфейса

Ответ пользовательского программного обеспечения

Операции с I2DAT

Операции с битами I2CONSET

STA STO SI АА

Следующее действие аппаратной логики интерфейса

AOh

Во время работы 12С в режиме ведомого приемника или ведомого передатчика, было получено условие STOP или условие повторный START

Нет операций с I2DAT

О

Переключение в режим, в котором предварительная адресация ведомого отсутствует; индивидуальный сетевой адрес ведомого или адрес общего вызова не будут распознаваться

AOh

Во время работы 12С в режиме ведомого приемника или ведомого передатчика, было получено условие STOP или условие повторный START

Нет операций с I2DAT

Переключение в режим, в котором предварительная адресация ведомого отсутствует; индивидуальный адрес ведомого будет распознаваться; адрес общего вызова будет распознаваться, если I2ADR[0] = 1

Нет операций с I2DAT

Переключение в режим, в котором предварительная адресация ведомого отсутствует; индивидуальный сетевой адрес ведомого или адрес общего вызова не будут распознаваться; условие START будет передано в линию, когда шина освободится

Нет операций с I2DAT

Переключение в режим, в котором предварительная адресация ведомого отсутствует; индивидуальный адрес ведомого будет распознаваться; адрес общего вызова будет распознаваться, если I2ADR[0] = 1; условие START будет передано в линию, когда шина освободится

Формат обмена по шине 12С для режима ведомого приемника показан на Рис. 12.6.

12.3.4. Режим ведомого передатчика

В режиме ведомого передатчика первый байт принимается от ведущего и обрабатывается аналогично режиму ведомого приемника, за исключением того, что установленный бит направления данных (ВЫСОКИЙ уровень соответствует чтению данных из линии) сигнализирует о намерении ведущего принимать данные от ведомого. По линии SDA в последовательном виде ведомый передает ведущему данные, в то время как по линии SCL от ведущего к ведомому поступает последовательность синхроимпульсов. Условия START и STOP распознаются ведомым, как начало и конец последовательной передачи.

Как и в режиме ведомого приемника, в режиме ведомого передатчика аппаратные средства интерфейса 12С производят сравнение принятого от ведущего адреса ведомого со своим индивидуальным адресом ведомого и адресом общего вызова. Если хотя бы один их этих адресов совпадает с полученным от ведущего, то генерируется прерывание микроконтроллера по этому событию.

В Табл. 12.6 перечислены коды состояний, возвращаемых микроконтроллером в регистре состояния (12STAT) для режима ведомого передатчика, и действия, которые должны быть предприняты программой пользователя в соответствии со значением этого кода.

Таблица 12.6. Коды состояния для режима 12С ведомого передатчика

Код состояния (I2STAT)

Текущее состояние

шины 12С и аппаратной логики интерфейса

Ответ пользовательского программного обеспечения

Следующее действие аппаратной логики интерфейса

Операции с I2DAT

Операции с битами I2CONSET

STA

STO

SI

АА

A8h

Индивидуальный сетевой адрес ведомого +R был получен из линии; бит АСК был возвращен (передан в линию)

Загрузить байт данных

X

0

0

0

Последний байт данных будет

передан в линию;

бит АСК будет принят из линии

Загрузить байт данных

X

0

0

1

Байт данных будет передан и бит АСК будет принят из линии

BOh

Арбитраж был потерян во время прохождения адреса ведомого +R/W от ведущего; индивидуальный адрес ведомого +R был получен; бит АСК был возвращен

Загрузить байт данных

X

0

0

0

Последний байт данных будет

передан в линию;

бит АСК будет принят из линии

Загрузить байт данных

X

0

0

1

Байт данных будет передан и бит АСК будет принят из линии

B8h

Байт данных из регистра I2DAT был передан в линию;

бит АСК был принят из линии

Загру-_ зить байт данных

X

0

0

0

Последний байт данных будет

передан в линию;

бит АСК будет принят из линии

Загрузить байт данных

X

0

0

1

Байт данных будет передан и бит АСК будет принят из линии

Таблица 12.6. Коды состояния для режима 12С ведомого передатчика (продолжение)


Предыдущая Следующая






Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book4_147.html on line 392

Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book4_147.html on line 392

Warning: include() [function.include]: Failed opening './news.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/picprof/data/www/picprof.com/book/book4_147.html on line 392