Information
MPLAB Harmony Block Diagram
Application(s)
Driver
DriverDriverDriverDriverDriver
PLIBPLIBPLIBPLIBPLIB
System
Configuration
RTOS
Configuration
Plug-inPlug-in
Middleware
DriverMiddleware
Common
System
Services
RTOS
(Third Party)
O
S
A
L
Hardware
Software Framework
MPLAB
®
Harmony Configurator (MHC)
MPLAB Harmony Integrated 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
■ Provides functional interface for Microchip
PIC32 scalability
■ Implements part-specific features
MPLAB Harmony Configurator
MPLAB Harmony Configurator will support all features that
are present in MPLAB Code Configurator.
MPLAB Harmony Configurator Features
■ Create: MPLAB Harmony project
■ Graphically select and configure:
MPLAB Harmony components
■ Initialize: middleware state machines
■ Generated project can be compiled and executed
■ Third party solutions can be added and configured
without updates to MPLAB Harmony Configurator
MPLAB Harmony Configurator Design
■ Java and Linux technologies
■ Easily scalable
• Add MCUs
• Add features
■ Low support and maintenance
■ Enables third party solutions
■ Linux look and feel
7
Quick Guide to Microchip Development Tools