Download STM32Cube USB host library

Transcript
UM1720
USB host library architecture and file organization
2
USB host library architecture and file organization
2.1
USB host library architecture
Figure 2 shows an overview of the library architecture.
Figure 2. USB host library architecture
$SSOLFDWLRQ
([+RVW,QLW6WDUW
([0DVVVWRUDJH5($':5,7(
&ODVV
$3,V
8VHUFDOOEDFNV
&ODVV+DQGOHU
86%+RVW&ODVV'ULYHUV
&RUH$3,V
&RUH3URFHVVVWDWHPDFKLQH
86%+RVW&RUH
670&XEH86%+RVW/LEUDU\
/RZ/HYHO*OXH,QWHUIDFHXVEKBFRQIF
670&XEH+$/'ULYHUV86%+RVW)6+6,3*3,2
06Y9
As seen in Figure 2, the USB host library is organized into two main parts: the core and the
class drivers.
The host core handles the core services of the library which are mainly used for the
following:
•
Device connection/disconnection management and standard enumeration,
•
Host pipes control and USB transfer management (control, interrupt, bulk,
isochronous).
The core block can be schematically subdivided into two main sub-blocks:
•
The core APIs which are called from the user application or from a class driver,
•
The core process which handles the host state machine.
The class drivers are used for the implementation of the various USB classes.
DocID025799 Rev 3
7/43
42