Harmony 3 driver and system service application examples for SAM C20/C21 family
MPLAB® Harmony 3 is an extension of the MPLAB® ecosystem for creating embedded firmware solutions for Microchip 32-bit SAM and PIC® microcontroller and microprocessor devices. Refer to the following links for more information.
- Microchip 32-bit MCUs
- Microchip 32-bit MPUs
- Microchip MPLAB X IDE
- Microchip MPLAB® Harmony
- Microchip MPLAB® Harmony Pages
This repository contains the MPLAB® Harmony 3 driver and system service application examples for SAM C20/C21 family
To clone or download these applications from Github, go to the main page of this repository and then click Clone button to clone this repository or download as zip file. This content can also be downloaded using content manager by following these instructions.
Contents Summary
Folder | Description |
---|---|
apps | Contains driver and system service example applications |
docs | Contains documentation in html format for offline viewing (to be used only after cloning this repository onto a local machine). Use github pages of this repository for viewing it online. |
Code Examples
The following applications are provided to demonstrate the typical or interesting usage models of one or more peripheral libraries.
Name | Description |
---|---|
I2C driver asynchronous - I2C EEPROM | This example application shows how to use the I2C driver in asynchronous mode to perform operations on the EEPROM |
I2C driver asynchronous - multi slave | This example application demonstrates the multi-client feature of the asynchronous mode of the I2C driver by communicating with an external EEPROM and a temperature sensor |
I2C driver synchronous - I2C EEPROM | This example application shows how to use the I2C driver in synchronous mode to perform operations on the EEPROM |
I2C driver synchronous - multi slave | This example application demonstrates the multi-client feature of the synchronous mode of the I2C driver by communicating with an external EEPROM and a temperature sensor |
I2C EEPROM AT24 driver - EEPROM Read Write | This example application shows how to use the AT24 driver to perform read and write operations on AT24 series of EEPROM |
SDSPI driver synchronous - SDSPI Read Write | This example application shows how to use the SDSPI driver in synchronous mode to perform block operations on the SD Card Media |
SPI driver asynchronous - multi instance | This example application demonstrates the multi instance feature of the asynchronous mode of the SPI driver by reading and writing to two EEPROMs connected to two different SPI bus |
SPI Driver asynchronous - Self loopback multi client | This example demonstrates how to use the SPI driver in asynchronous mode to achieve self-loop back between multiple clients |
SPI driver synchronous - multi instance | This example application demonstrates the multi instance feature of the synchronous mode of the SPI driver by reading and writing to two EEPROMs connected to two different SPI bus |
SPI Driver synchronous - Self loopback multi client | This example demonstrates how to use the SPI driver in synchronous mode to achieve self-loop back between multiple clients in RTOS environment |
SPI EEPROM AT25 driver - EEPROM Read Write | This example application shows how to use the AT25 driver to perform read and write operations on AT25 series of EEPROM |
USART driver asynchronous - UART echo | This example echoes the received characters over the console using the USART driver in asynchronous mode |
USART driver asynchronous - USART multi instance | This example echoes the received characters over the two consoles using the USART driver in asynchronous mode |
USART driver synchronous - UART echo | This example echoes the received characters over the console using the USART driver in synchronous mode |
USART driver synchronous - USART multi instance | This example echoes the received characters over the two consoles using the USART driver in synchronous mode |
FAT filesystem using NVM Media | This application shows an example of implementing a FAT disk in the device internal Flash memory |
MPFS filesystem using NVM Media | This application shows an example of implementing a MPFS disk in device Internal Flash memory |
FAT file system using NVM and SD Card media | This application shows an example of using the FAT File System to access files across multiple media (NVM, SD Card) |
FAT filesystem using SD Card media | This application shows an example of using the MPLAB Harmony File System to access and modify the contents of a SD card using the SDSPI driver and the SPI PLIB |
EEPROM Emulator library read write | This application example demonstrates how to read and write to the Emulated EEPROM memory space using the EEPROM Emulator library |
FreeRTOS basic | This example application demonstrates context switching between four tasks of different priorites. Two tasks run periodically while the other two tasks are event driven |
FreeRTOS Task Notification | This example application is to illustrate the FreeRTOS Task Notification feature which is used as a light weight binary semaphore |
Console Debug System Service using UART | This example application demonstrates the UART based console and debug system service |
Time System Service multi-client | This example application demonstrates the multi-client system timer functionality |