of ST’s 32-bit ARM-based STR7 and STR9 MCU families include many variants with USB ports, alongside a broad range of other standard interfaces. The new USB Developer Kit – which will be available to users as a free download from ST’s website – supports STR71x and STR91x devices with USB, as well as the recently-announced STR75x family. It allows easy software development for all the USB transfer types, and includes an implementation of DFU (Device Firmware Update) to provide the capability to update system firmware through the USB interface. The kit also includes a ‘Virtual COM’ demo (CDC class) to emulate the classic RS232 interface on USB, for users that want to benefit from the ubiquity of USB, but retain legacy software.
The software kit includes a library of drivers, plus demonstrations of each transfer type, to help users develop their own USB routines on STR7 and STR9 MCUs. An HID (Human Interface Device) mouse/joystick driver demonstrates fast response Interrupt transfers; high-speed Bulk transfers are illustrated with a mass storage application; and guaranteed speed isochronous transfers are supported with a voice/speaker/microphone demonstration.
USB interfaces are now almost as popular as UARTs in embedded applications, but their application development is more difficult due to greater complexity. Firmware is usually divided into three layers: a USB Function layer, implementing device functionality; the Logical Device layer, handling standard USB requests and low-speed data transfers, plus device enumeration and power management; and the Bus Interface layer that provides the interface between the USB Logical Device and the hardware.
The new kit offers, for the first time as a free package, a full implementation of all the layers and transfer types, within a user-friendly and well-documented package. The software has been designed from the start to be used and tailored easily to meet customers’ specific requirements.
The kit adds to USB software already available from third parties, and will allow software suppliers to concentrate on value-added features and to spend less time on the basic USB firmware. USB stacks from third-party software companies are available to provide file system support, secured file systems, support for any real-time operating system, support for special devices and custom drivers, and support for composite devices that mix several USB classes. Some third-party providers also offer maintenance and support contracts.
Both of ST’s 32-bit ARM-based STR7 and STR9 MCU families include variants with USB ports, in addition to a wide range of other standard interfaces. These devices are fully USB compliant, certified and registered on USB.ORG.