[an error occurred while processing this directive]
|
Микросхема - ATMega64L
В программе обработки прерывания по TWI у меня стоит команда:
TWCR = (1 < < TWINT) + (1 < < TWEN) + (1 < < TWIE);
По идее, она должна сбросить флаг TWINT. Но реально она ничего не сбрасывает, и по её окончании TWCR==0x85. А следующие прерывания по TWI - не возникают (думаю, из-за того что бит не сброшен).
В чём может быть дело?
В дизассемблере эмулятора команда показана как
LDI R16,0x85;
STS _A_TWCR,R16;