Atmega163(l), Table 35. status codes for slave transmitter mode – Rainbow Electronics ATmega163L User Manual
Page 84

ATmega163(L)
84
in
r16, TWSR
; Check value of TWI Status Register. If status
cpi
r16, SR_DATA_NACK
; different from SR_DATA_NACK, go to ERROR
brne
ERROR
in
r16, TWDR
; Input received data from TWDR.
nop
;
ldi
r16, (1< out TWCR, r16 ; Clear TWINT bit in TWCR to start reception of data. ; Setting TWEA causes TWI unit to enter ; not addressed slave mode with reckognition of own SLA ; Table 35. Status Codes for Slave Transmitter Mode Status code (TWSR) Status of the 2-wire Serial Bus and 2-wire Serial Interface hard- ware Application software response Next action taken by 2-wire Serial Interface hardware To/from TWDR To TWCR STA STO TWIN T TWE A $A8 Own SLA+R has been received; ACK has been returned Load data byte or Load data byte X X 0 0 1 1 0 1 Last data byte will be transmitted and NOT ACK should $B0 Arbitration lost in SLA+R/W as master; own SLA+R has been received; ACK has been returned Load data byte or Load data byte X X 0 0 1 1 0 1 Last data byte will be transmitted and NOT ACK should $B8 Data byte in TWDR has been transmitted; ACK has been received Load data byte or Load data byte X X 0 0 1 1 0 1 Last data byte will be transmitted and NOT ACK should $C0 Data byte in TWDR has been transmitted; NOT ACK has been received No TWDR action or No TWDR action or No TWDR action or No TWDR action 0 0 1 1 0 0 0 0 1 1 1 1 0 1 0 1 Switched to the not addressed slave mode; $C8 Last data byte in TWDR has been transmitted (TWEA = ‘0’); ACK has been received No TWDR action or No TWDR action or No TWDR action or No TWDR action 0 0 1 1 0 0 0 0 1 1 1 1 0 1 0 1 Switched to the not addressed slave mode;
be received
Data byte will be transmitted and ACK should be re-
ceived
be received
Data byte will be transmitted and ACK should be re-
ceived
be received
Data byte will be transmitted and ACK should be re-
ceived
no recognition of own SLA or GCA
Switched to the not addressed slave mode;
own SLA will be recognized;
GCA will be recognized if TWGCE = ‘1’
Switched to the not addressed slave mode;
no recognition of own SLA or GCA;
a START condition will be transmitted when the bus
becomes free
Switched to the not addressed slave mode;
own SLA will be recognized;
GCA will be recognized if TWGCE = ‘1’;
a START condition will be transmitted when the bus
becomes free
no recognition of own SLA or GCA
Switched to the not addressed slave mode;
own SLA will be recognized;
GCA will be recognized if TWGCE = ‘1’
Switched to the not addressed slave mode;
no recognition of own SLA or GCA;
a START condition will be transmitted when the bus
becomes free
Switched to the not addressed slave mode;
own SLA will be recognized;
GCA will be recognized if TWGCE = ‘1’;
a START condition will be transmitted when the bus
becomes free