10 Hostmode
152
Reaction of the MASTER to various conditions
•
Reaction of the MASTER to an NACK condition.
- Repetition (transmit) of the buffered last packet with the request-bit unchanged.
•
Reaction of the MASTER to an ACK condition.
- A new packet can be sent to the slave, if available. The request flag is inverted
before the transmission. (Note: this packet must also be buffered in case a repetition
is requested.)
10.9.4
SLAVE-protocol
Definition of the SLAVE-condition
•
NACK-condition
- If a packet-header is identified, but a CRC error takes place.
•
ACK-condition
- If a packet is correctly received (CRC OK) and the request flag is different
compared with the last correctly received packet.
- If bit 6 in the CMD/INF byte is set, then the condition of the request-flag in the last
correctly received packet is ignored. Every correctly received packet with bit 6 in
the CMD/INF byte causes an ACK-condition. A request condition is thus
impossible here.
•
Request-condition
- If a packet is correctly received, and the request-flag is identical to the last correctly
received packet. (Bit 6 of the CMD/INF-byte must be erased. Refer to the text
above.
Reaction of the SLAVE to various conditions
•
Reaction of the SLAVE to the NACK-condition
- Transmission of the special request-packet #170 #170#170#85. (direct request for a
repetition of the defective packet without waiting for the MASTER-timeout NACK
condition).
•
Reaction of the SLAVE to the ACK-condition
- Transmission of the present (new) response-packet (e.g. data packet if a G-POLL).
NOTE: This packet must be buffered in case of a later repetition)
•
Reaction of the SLAVE to the request-condition
- Repetition of the last (buffered) packet. Information of the present received packet
is not used, it is thrown away/erased.
10.9.5
Stuffing errors or unexpected header sequences
•
The sequence #170#0 during a header search is interpreted as an ERROR, and the
header search carried on.
•
Sequences between #170#1-#169 and #170#171-#255 during the header search AND
during the packet read-in are interpreted as an ERROR and cause a
newstart,
i.e. the
header search is started afresh.