Полная версия этой страницы:
AVR и TWI модуль.
Михаил_K
Dec 13 2013, 16:16
Возник еще один вопрос связанный с AVR. На сей раз с использованием модуля TWI. После того, как я закончил передачу, я заставляю модуль
сгенерить условие "СТОП". Как мне определить, что это условие уже выполнилось и можно снова давать старт? В даташите ясно написано, что
при выдачи стопа TWINT не устанавливается...
Цитата(Михаил_K @ Dec 13 2013, 20:16)

сгенерить условие "СТОП". Как мне определить, что это условие уже выполнилось и можно снова давать старт?
А это не нужно!
Когда понадобится выставить START -надо просто записать команду в регистр! Если STOP еще не выставился он все равно для начала закончит выставляться, а потом выставится START...
Михаил_K
Dec 14 2013, 05:51
На самом деле это не так. Если не дождаться выставления стопа, и дать команду старт - генерится повторный старт. С соотвествующим выставлением статуса.
Поэтому нужно дождаться стопа. Мне кроме как опросить ножки и убедиться что они обе в 1 в голову пока ничего другого не пришло.
По описанию регистра TWCR, флаг TWSTO (бит 4) "Флаг сбрасывается аппаратно по окончании формирования состояния СТОП"
Михаил_K
Dec 14 2013, 06:43
Во, а вот это я пропустил. Спасибо!
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.