Description
This is a class on creating advanced PIC32 embedded applications using MPLAB® Harmony. Some of the slides may not be easily understood because they are intended to be presented by an instructor.
Class Abstract
MPLAB Harmony is a modular framework that provides interoperable firmware libraries for PIC32 application development. These libraries include drivers, system services, and middleware.
In this class, you will learn how to control two PIC32 peripherals (SPI) using one Harmony Driver (multi-instance driver). You will also learn how easy it is to use Harmony to add an RTOS to a bare metal (non-RTOS) application.
For exercises, you will use the Curiosity PIC32MZEF Development Board and two MikroElektronika Click boards™:
- Ferroelectric Random Access Memory (FRAM) Click board (part number MIKROE-1486)
- Humidity, Pressure, and Temperature (Weather) Click board (part number MIKROE-1978)
The three labs are have been created to be used in the same order. In Lab 1, you will read the temperature from the Weather Click board and send the value to a terminal emulator over USB. In Lab 2, you will store the temperature value in the FRAM Click board. In Lab 3, you will add an RTOS (FreeRTOS) to the project.
The lab manual provides step-by-step instructions for the following:
- Lab 1: Create an MPLAB Harmony application using an SPI Driver, USB console and Timer System Service.
- Lab 2: Control two PIC32 SPI Peripherals using one driver.
- Lab 3: Add an RTOS to the application created in Lab 2.
Training Slides, Lab Manual, Source Files, and Solutions
This project has been verified to work with the following versions of software tools: MPLAB X IDE v3.61, MPLAB XC32 Compiler v1.43, MPLAB Harmony v2.03b, and MPLAB Harmony Configurator Plugin v2.0.3.5.
Note: As the tools are regularly updated, there may be occasional issues while using newer versions. If that is the case, we recommend you to use the same version as specified in the project.
The archived versions of our tools can be found below:
MPLAB Harmony.
MPLAB X IDE and XC32 Compiler.
Note that multiple versions of all these tools can co-exist on the same computer.
Materials
Hardware Tools
Tool | About | Purchase |
---|---|---|
| |
MikroElektronika FRAM Click board | FRAM click > |
MikroElektronika Weather Click board | Weather click > |
Development Software Required for Labs
Tool | About | Installers |
Installation
Instructions |
||
---|---|---|---|---|---|
Windows | Linux | Mac OSX | |||
MPLAB® X
Integrated Development Environment |
| | | | |
MPLAB® XC32
C/C++ Compiler |
| | | | |
MPLAB® Harmony 2.xx
Integrated Software Framework |
| | | | |