USB Device Interface

MDK-Professional provides USB Device and USB Host support for embedded systems. The USB Device Interface uses standard device driver classes that are available with all Windows PCs. No Windows host driver development is required. The USB Device interface uses a generic software layer using RTX Kernel features.

USB device interface

Product Highlights

  • USB Hardware layer and event handler (hardware specific)
  • Generic USB core supporting USB 1.1 and 2.0
    • Low Speed (1.5Mbit/s), Full Speed (12Mbit/s), & High-Speed (480Mbit/s)
  • Common USB Device Class support
    • Human Interface Devices (HID), Mass Storage Class (MSC),
    • Audio Device (ADC), Communication Device (CDC), & Composite Device
  • Integrated with other MDK-Professional components
    • MSC works with Flash File System to support SD/MMC card storage
    • Works with RTX Real-Time Kernel


  • The USB Device Interface is provided in binary form as part of MDK-Professional. It is not included with other MDK-ARM Editions.

USB Standards
USB 1.1 support yes
USB 2.0 support yes
Low-speed support (1.5 Mbits/s) yes
Full-speed support (12 Mbits/s) yes
High-speed support (480 Mbits/s) yes
Host OS
Windows 7 yes
Windows Vista yes
Windows XP yes
Windows 2000 yes
USB Endpoints
Control yes
Interrupt yes
Bulk yes
Isochronous yes
Device Classes
Audio yes
Human Interface Device yes
Mass Storage yes
CDC yes
Other Features
Composite USB Devices yes
DMA Mode Data Transfer yes

Memory Requirements
USB Device Component Code Size (KBytes) RAM Size (KBytes)
USB Core 2.80 0.11
Mass Storage Class Support 2.27 0.09
HID Class Support 0.44 0
Audio Class Support 0.28 0.01
CDC Class Support 1.05 0.07
LPC17xx HW Driver 1.63 0.08
STM32F10x HW Driver 1.41 0.09


  • All example figures are based on Cortex-M3
  • All values are minimum requirements with minimum data buffers and no application code



We use cookies to give you the best experience on our website. By continuing to use our site you consent to our cookies.

Change Settings

Find out more about the cookies we set