AT89RFD-11 User Guide
-11
7648A–USB–06/06
The button values are updated following the button switches state (1 if depressed, 0 if
released).
The scroll wheel value is updated using the motion of Z-Wheel as explained in section
4.2
3.6.3
Mass Storage
Overview
The Mass Storage application is simply file transfer between the PC and the device.
The USB data exchange for this application is based on the SCSI (Small Computer Sys-
tem Interface) commands which use two bulk endpoints (one IN and one OUT) to
perform the status and data transfer. The endpoint 0 (control endpoint) is used only to
perform the enumeration process, the errors management and to determine the LUN
(Logical Unit Number) value.
In other words, the Mass Storage application is a set of SCSI commands send by the
host to manage the file transfers.
The Mass Storage class allows one device to manage several memories at the same
time thanks to the LUN.
Figure 3-8.
Mass Storage Application Overview
The standard enumeration process (USB chapter 9 support) is performed through the
default control endpoint. This process consists of a set of parameters sent by the device
to the host to identify the device class and load the appropriate drivers. This parameters
are called the descriptors.
The SCSI command are performed through both endpoints (IN or OUT). Each SCSI
command is decoded and transmitted to the appropriate memory through a command
set (Read, Write, is memory present, is memory write protected,...).
The memory answers are converted in SCSI status before being wrapped in USB CSW
(Command Status Wrapper) and sent to the USB Host controller. Because the USB bus
is a single master bus (the USB Host), each data transfer is initiated by the USB Host,
following a specific Command-Data-Status flow (see figure below)