StellarisWare® USB Library Standalone Package
Stellaris microcontrollers with USB functionality have all passed USB Device and USB Embedded Host compliance testing. The Stellaris USB Library is a royalty-free set of data types and functions for creating USB device, host, or On-the-Go (OTG) applications for Stellaris microcontroller-based systems.
Several programming interfaces are provided, ranging from the thinnest layer, which merely abstracts theunderlying USB controller hardware, to high-level interfaces offering simple APIs supporting specific devices. The contents of the USB library and its associated header files fall into four main groups:
- General-purpose functions used by both device and host applications. These include functions to parse USB descriptors and set the operating mode of the application.
- Device specific functions providing the class-independent features required by all USB device applications such as host connection signaling and responding to standard descriptor requests.
- Host specific functions providing class-independent features required by all USB host application such as device detection and enumeration, and endpoint management.
- Class specific functions and data types to aid development of applications conforming to several commonly-used USB classes.
USB device examples provided include HID keyboard, HID mouse, CDC serial, and generic bulk.
USB host examples provided include mass storage (USB flash stick), HID keyboard, and HID mouse.
In addition, the Stellaris USB library provides a Windows™-based INF for the supported USB classes in a precompiled DLL that saves development time.
- Free license and royalty-free use (for use with Stellaris MCUs)
- Simplify and speed the development of applications - can be used for application development or as a programming example.
- Allow the creation of full-function, easy-to-maintain code.
- Written entirely in C except where absolutely not possible. Even written in C, the software is reasonably efficient in terms of memory and processor usage due to the compact nature of the Cortex-M3 Thumb2 instruction set.
- Take full advantage of the stellar interrupt performance of the Cortex-M3 core, without requiring any special pragmas or custom assembly code prologue/epilogue functions.
- Can be compiled with error-checking code (for development use) or without (for final production use in an MCU with a smaller memory configuration).
- Available as both object library and source code, so that the library can be used as-is or adapted as desired.
- Complete source-code examples for every peripheral and complete projects that work out-of-the-box for Stellaris development and evaluation kits.
- Compiles on ARM/Keil, IAR, Code Red, Code Sourcery, and generic GNU development tools.