Datasheet

3
Software and Hardware Solutions for the 32-bit Designer
Introduction
MPLAB Harmony is a flexible, abstracted, fully integrated
firmware development environment for PIC32
microcontrollers. It enables robust framework development
of interoperable RTOS-friendly libraries with quick and
extensive Microchip support for third party software
integration. MPLAB Harmony includes a set of peripheral
libraries, drivers and system services that are readily
accessible for application development. The code
development format allows for maximum re-use and
reduces time-to-market.
Benefits
Faster time-to-market
Improved code interoperability
Simplified support
Improved 32-bit scalability
Enhanced third party software integration
MPLAB® Harmony for PIC32
MPLAB Harmony Block Diagram
Application(s)
Driver
DriverDriverDriverDriverDriver
PLIBPLIBPLIBPLIBPLIB
System
Configuration
RTOS
Configuration
Plug-inPlug-in
Middleware
DriverMiddleware
Common
System
Services
RTOS
(3rd Party)
O
S
A
L
Hardware
Software Framework
Application Layer
Implements desired overall behavior
Abstracted hardware access
Allows for easy port across PIC32 parts
Common System Services
Provides common functionality to avoid duplication
and conflicts
Eliminates complex interactions and interdependencies
between modules
OSAL provides OS compatibility and interface
Manages shared resources
Supports low-level configuration and board
support package
Middleware Layer
Implements complex libraries and protocols
(USB, TCP/IP, file systems, graphics)
Provides a highly abstracted application program interface
Libraries are thread safe and RTOS ready
Built on drivers, PLIBS, system services
Supports third party library integration
Device Driver Layer
Provides highly-abstracted interface to peripheral
Controls access to the peripheral
Manages multiple hardware instances and software
clients with select drivers
Manages peripheral state and multiple
peripheral instances
Accesses hardware via PLIB
Supports blocking or non-blocking code
Peripheral Libraries (PLIB) Layer
Provide functional interface for Microchip
PIC32 scalability
Implements part-specific features
PIC32 Software Development Tools Available with MPLAB Harmony
Applications
Operating System
Abstract Layer (OSAL)
Middleware/
Software Libraries
Device Drivers
Development
Software
Third Party
Software
Graphics
applications
TCP/IP applications
and utilities
USB applications
OSAL interface with
“basic” and “none”
implementation
OSAL implementation
for FreeRTOS
OSAL implementation
for Micrium µC/OS-III
Graphics
TCP/IP
USB
Cryptographic
libraries
File systems
System
services
ADC
Ethernet media access
controller
Ethernet PHY interface
Controllerless graphics
Epson LCD controller
Non-volatile memory
SPI, UART, high-speed USB
Timer, parallel master port
MPLAB® X IDE
MPLAB XC32++
FreeRTOS*
OpenRTOS*
TCP/IP*
SSL libraries
Micrium
μC/OS-III
Additional software components planned
*Sold and front-line support provided directly by Microchip