Цитата(Genadi Zawidowski @ Apr 22 2011, 10:51)

В приложении - кусок, работавший. В него "надёргано" атмеловских функций, в конце - чтение какой-то епромины.
из Вашего кода:
функция unsigned char TWID_Write(...)
...
while( !TWI_TransferComplete(pTwi) && (++timeout<TWITIMEOUTMAX) );
if (timeout == TWITIMEOUTMAX) {
dbg_puts_impl("TWID Timeout TC2\n\r");
}
В функции посылки unsigned char TWID_Write(...) при посылке 1 байта по сути таже самая проверка
TWI_TransferComplete(pTwi), только еще таймаут проверяется, когда досчитает до TWITIMEOUTMAX 50000
Соответственно скорее всего будет выходить по таймауту.
А откуда это взяли, что нада еще вводить этот таймаут?