Skip to content

Microchip-MPLAB-Harmony/csp_apps_pic32ck_sg_gc

Repository files navigation

Harmony 3 Peripheral Library Application Examples for PIC32CK-GC/SG 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.

This repository contains the MPLAB® Harmony 3 peripheral library application examples for
PIC32CK-GC/SG 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 peripheral library example
applications

Code Examples

The following applications are provided to demonstrate the typical or interesting
usage models of one or more peripheral libraries.

Name Description
AC Sleepwalking This example application shows
how to use the AC Peripheral library to perform a single shot
comparison in standby sleep mode periodically and wake up the device
when the comparator output toggles
ADC Blocking This example application shows
how to use the ADC Peripheral library in blocking mode to convert
analog input on a ADC channel
ADC DMA Scan This example application shows
how to use the ADC Peripheral library in scan mode to convert
multiple analog input on a ADC channels and transfer the ADC result
using DMA
ADC Interrupt This example application shows
how to use the ADC Peripheral library in in interrupt mode to
convert multiple analog inputs
CAN FD Blocking This example application shows
how to use the CAN module to transmit and receive CAN FD messages in
polling mode
CAN FD Interrupt This example application shows
how to use the CAN module to transmit and receive CAN FD messages in
interrupt mode
CAN Blocking This example application shows
how to use the CAN module to transmit and receive normal CAN
messages in polling mode
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
DMA CRC-32 Generation This example application
demonstrates how to use the DMA peripheral to compute 32-bit Cyclic
Redundancy Checksum (CRC)
DMAC USART Echo This example application
demonstrates USART transfer with DMA to receive 10 bytes and echo
back the received bytes
DMAC Memory Transfer This example application
demonstrates how to use the DMAC peripheral to do a memory to memory
transfer
DSU CRC32 Generate This example application
demonstrates how to use the DSU Peripheral library to compute 32-bit
Cyclic Redundancy Checksum (CRC)
EIC Interrupt This example application
demonstrates how to generate interrupt using the EIC on switch press
and indicate it through an LED
EVSYS Trigger This example application
demonstrates how to use the EVSYS Peripheral library to setup
autonomous, low-latency and configurable communication between
peripherals
FCW Read Write This example application
demonstrates how to use the FCW to erase and program the internal
Flash memory
FREQM Measurement This example application
demonstrates how to use the FREQM peripheral to measure the
frequency of the internal RC Oscillator
MPU Cache Coherency This example shows how to
maintain cache coherency by allocating DMA buffers in non-cacheable
SRAM region defined by MPU
PM Wakeup Using EIC This application demonstrates
entering the low power modes and exiting it using the EIC
PM Wakeup Using RTC This example demonstrates
entering the low power modes and exiting it using the RTC
PORT Polling This example application
demonstrate how to poll the switch input, and indicate the switch
status using the LED
RSTC Reset Cause This example shows how to use the
RSTC peripheral to indicate the cause of the device reset
RTC Alarm Interrupt This example shows how to use the
RTC to configure the time and generate the alarm
RTC Periodic Interrupt This example application shows
how to use the RTC to generate periodic interrupts
SERCOM I2C EEPROM Read Write This example application
demonstrates how to use the SERCOM peripheral to write and read from
the I2C serial EEPROM memory
SERCOM SPI EEPROM Read Write This example application
demonstrates how to use the SERCOM SPI peripheral to write and read
from the SPI serial EEPROM memory
SERCOM SPI Interrupt This example application shows
how to use SERCOM SPI PLIB with external loop back to write and then
read back an array of data in interrupt mode
SERCOM USART Blocking This example application
demonstrates how to use the SERCOM peripheral in USART mode to
transfer block of data in a blocking manner
SERCOM USART Interrupt This example application
demonstrates how to use the SERCOM peripheral in USART mode to
transfer data in a non-blocking manner
SERCOM USART Ring Buffer This example application
demonstrates how to use the SERCOM peripheral in USART ring buffer
mode to transfer data in a non-blocking manner
SQI Flash Read Write This example application
demonstrates how to use the SQI Peripheral library to perform erase,
write and read operation with the on-board SST26 SQI Serial Flash
memory
Secure TCC Demonstration This example application performs
a PWM signal applied on PD20 pin (LED0) based on TCC0
peripheral
Systick Periodic Interrupt This example shows how to use the
SysTick to generate periodic interrupts
TCC PWM Generation This example application shows
how to use the TCC to generate a 2 or 3 phase PWM signals for motor
control with dead time
TCC Capture Mode This example shows how to use the
TCC module in capture mode to measure duty cycle and frequency of an
external input
TCC Compare Mode This example shows how to use the
TCC module in compare mode to generate different waveforms
TCC Timer Mode This example shows how to use the
TCC module in timer mode to generate periodic interrupt
TRAM Erase On Tamper Detect This example application shows
how to configure and use tamper detect feature of RTC and
TrustRam
TRNG Random Number This example shows how to use the
TRNG Peripheral library to generate and read a random number
TrustZone Systick Periodic Timeout This example application shows
how to use the SysTick to generate periodic interrupts on both
Secure and Non-secure modes
WDT Timeout This example shows how to
generate a Watchdog timer reset by emulating a deadlock