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.
This repository contains the MPLAB® Harmony 3 peripheral library application examples for SAM RH707 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.
Folder | Description |
---|---|
apps | Contains peripheral library 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. |
The following applications are provided to demonstrate the typical or interesting usage models of one or more peripheral libraries.
Name | Description |
---|---|
ADC Polling | This example application shows how to sample an analog input in polled mode and send the converted data to console |
ADC user sequence | This example application shows how to sample three analog inputs using the user sequencer in software trigger mode and send the converted data to the console |
Cache maintenance | This example shows cache maintenance operation by cleaning and invalidating the cache for the DMA buffers located in the cacheable SRAM region |
Clock configuration | This example application shows how to configure the clock system to run the device at maximum frequency. It also outputs a prescaled clock signal on a GPIO pin for measurement and verification |
DACC waveform generation | This example shows how to use the DACC peripheral to generate a 5 KHz sine wave or triangle wave using a lookup table |
FLEXCOM SPI EEPROM read write | This example application shows how to use the flexcom module in SPI mode |
FLEXCOM TWI (I2C) EEPROM | This example application shows how to use the flexcom module in TWI mode |
FLEXCOM USART blocking | This example application shows how to use the flexcom module in USART mode |
FLEXCOM USART interrupt | This example application shows how to use the flexcom module in USART mode |
FLEXCOM USART ring buffer | This example application demonstrates how to use the FLEXCOM peripheral in USART ring buffer mode |
HEFC flash read write | This example application demonstrates how to use the HEFC to erase and program the internal Flash memory |
MCAN FD blocking | This example shows how to use the MCAN module to transmit and receive CAN FD messages in polling mode |
MCAN FD interrupt | This example shows how to use the MCAN module to transmit and receive CAN FD messages in interrupt mode |
MPU cache coherency | This example shows how to maintain cache coherency by allocating DMA buffers in non-cacheable SRAM region defined by MPU |
PIO interrupt | This example shows how to generate GPIO interrupt on switch press and release, and indicate the switch status using the LED |
PIO polling | This example shows how to poll the switch input, and indicate the switch status using the LED |
PWM Generation | This example shows how to use the PWM peripheral to generate 3-phase PWM signals with dead time |
RTC alarm interrupt | This example shows how to use the RTC to configure the time and generate the alarm |
RTT periodic interrupt | This example shows how to use the RTT to generate periodic interrupts |
Systick periodic interrupt | This example shows how to use the SysTick to generate periodic interrupts |
TC capture mode | This example shows how to use the TC module in capture mode to measure duty cycle and frequency of an external input |
TC compare mode | This example shows how to use the TC module in compare mode to generate an active low, active high, and toggle output on compare match |
TC timer mode | This example shows how to use the TC module in timer mode to generate periodic interrupt |
TCM cache coherency | This example shows how to maintain cache coherency by allocating the DMA buffers in the Tightly Coupled Memory (TCM), which are not cacheable |
TRNG random number | This example shows how to use the TRNG Peripheral library to generate and read a random number |
WDT timeout | This example shows how to generate a Watchdog timer reset by emulating a deadlock |
XDMAC memory transfer | This example shows how to use the XDMAC peripheral to do a memory to memory transfer and illustrates the usage of burst size to reduce the transfer time |
[]() []()