Co zrobic, jesli na skutek zaklocenia na I2C, Atmega zglosi utrate kontroli nad magistrala (TWSR=0x38) mimo, ze wcale nie ma innego mastera ? Proba wyslania sekwencji "start" jak ponizej:
TWCR = (1<<TWINT)|(1<<TWSTA)|(1<<TWEN); while (!(TWCR & (1<<TWINT)));
spowoduje zatrzymanie procesora w petli while. Jak z tego wybrnac ? Wprowadzic jakis timeout i pozniej zresetowac TWI ? Jesli tak to jak taki reset powinien wygladac ?
W przypadku wielu masterow podobny problem takze moze wystapic w sytuacji, jesli master nadajacy nie zdazy zakonczyc transmisji, bo akurat zresetuje go WD.
Heliogabal