MPLAB® Harmony v2 USB Library Overview
usb.jpg

Microchip’s MPLAB® Harmony USB software includes royalty-free source code and example projects. It provides support for USB device mode, embedded host, and On-The-Go (OTG) for PIC32 microcontrollers.

USB Device Library

The MPLAB Harmony USB Device Library (referred to as the USB Device Library) provides embedded application developers with a framework to design and develop a wide variety of USB Devices. A choice of full speed only or full speed and hi-speed USB operations are available, depending on the selected PIC32 microcontroller. The USB Device Library facilitates the development of standard USB devices through function drivers that implement standard USB device class specification. Vendor USB devices can also be implemented via USB Device Layer Endpoint functions. The USB Device Library is modular, thus allowing application developers to readily design composite USB devices. The USB Device Library is a part of the MPLAB Harmony installation and is accompanied by demonstration applications that highlight library usage. These demonstrations can also be modified or updated to build custom applications.

The USB Device Library features the following:

  • Support for different USB device classes (CDC, Audio, HID, MSD, and Vendor)
  • Supports multiple instances of the same class in a composite device
  • Supports multiple configurations at different speeds
  • Supports full speed and high-speed operation
  • Supports multiple USB peripherals (allows multiple device stacks)
  • Modular and Layered architecture
  • Supports deferred control transfer responses
  • Completely non-blocking
  • Supports both polled and interrupt operations
  • Works readily in a Real-Time Operating System (RTOS) environment

USB Host Library

The MPLAB Harmony USB Host Library (referred to as the USB Host Library) provides embedded application developers with a framework to design and develop USB host support for a wide variety of USB device classes. A choice of full speed only or full speed and high-speed USB operations are available, depending on the selected PIC32 microcontroller. The USB Host Library facilitates support of standard USB devices through class drivers that implement standard USB device class specification. Support for custom USB devices can also be implemented via a generic class driver. The USB Host Library is modular, thus allowing application developers to readily support composite USB devices. The USB Host Library is a part of the MPLAB Harmony installation and is accompanied by demonstration applications that highlight library usage. These demonstrations can also be modified or updated to build custom applications.

The USB Host Library features the following:

  • Class Driver Support (CDC, Audio, HID, MSD, and Generic)
  • Designed to support USB devices with multiple configurations at a different speed
  • Supports low speed, full speed, and high-speed operation.
  • Supports multiple USB peripherals (allows multiple host stacks)
  • Modular and Layered architecture
  • Completely non-blocking
  • Supports both polled and interrupt operation.
  • Works readily in an RTOS environment.
  • Designed to readily integrate with other Harmony Middleware
© 2024 Microchip Technology, Inc.
Notice: ARM and Cortex are the registered trademarks of ARM Limited in the EU and other countries.
Information contained on this site regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip devices in life support and/or safety applications is entirely at the buyer's risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.