English
Language : 

AT91SAM7S128 Datasheet, PDF (423/495 Pages) ATMEL Corporation – THUMB BASED MICROCONTROLLERS
AT91SAM7S128 Preliminary
• A functional stall is used when the halt feature associated with the endpoint is set. (Refer to
Chapter 9 of the Universal Serial Bus Specification, Rev 2.0, for more information on the halt
feature.)
• To abort the current request, a protocol stall is used, but uniquely with control transfer.
The following procedure generates a stall packet:
1. The microcontroller sets the FORCESTALL flag in the UDP_ CSRx endpoint’s register.
2. The host receives the stall packet.
3. The microcontroller is notified that the device has sent the stall by polling the
STALLSENT to be set. An endpoint interrupt is pending while STALLSENT is set. The
microcontroller must clear STALLSENT to clear the interrupt.
When a setup transaction is received after a stall handshake, STALLSENT must be cleared in
order to prevent interrupts due to STALLSENT being set.
Figure 33-14. Stall Handshake (Data IN Transfer)
USB Bus
Packets
Data IN PID
Stall PID
FORCESTALL
STALLSENT
Cleared by Firmware
Set by Firmware
Interrupt Pending
Cleared by Firmware
Set by
USB Device
Figure 33-15. Stall Handshake (Data OUT Transfer)
USB Bus
Packets
Data OUT PID
Data OUT
Stall PID
FORCESTALL
STALLSENT
Set by Firmware
Interrupt Pending
Set by USB Device
Cleared by Firmware
6116A–ATARM–15-Apr-05
423