2 Description
Bootloader Framework
The MPLAB Harmony v3 bootloader framework is divided into the following sub tasks:
- Communication Task
- Command Processing Task
- Programming Task
Communication Task
This task is responsible for receiving data from the host PC or embedded host through the selected communication interface in polling mode. It validates the incoming packet from the host with the expected header information before passing it to the command processing task.
Command Processing Task
This task processes the commands received from communication task and acts upon it, providing the response back to the host PC accordingly. If the command received is a program command, then it gives control to the programming task.
Programming Task
This task is responsible to program the internal Flash memory with a data packet received. It uses the Non-Volatile Memory (NVM) peripheral library to perform the unlock, erase, or write operations. It invokes the communication task in parallel to receive the next packet while waiting for the Flash operation to complete.