Jump to main content

##

# 1 Harmony 3 Peripheral Library Application Examples for PIC32CM JH01 Family

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

Name | Description
--- | ---
AC PWM Generation | This example application shows how to use the Analog Comparator Peripheral library to generate a 1 kHz PWM waveform
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 at the end of a successful comparison
ADC DMA Sleepwalking | This application shows how to configure the ADC in a sleepwalking operation, where the input voltage is measured at a fixed interval, and then the device is woken from sleep after conversion of 16 samples
ADC Sample | This example application shows how to sample an analog input using the ADC and displays the converted samples on a serial terminal
ADC Window Sleepwalking | This application shows how to configure ADC in a sleepwalking operation, where input voltage is measured at a fixed interval, but device is not woken from sleep until the measured value is below a given threshold
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
CCL Manchester Encoder | This example application shows how to use the CCL peripheral library and generate a Manchester-encoded output
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
DAC Waveform Generation | This example application shows how to use the DAC to generate a 1 kHz Sine or Sawtooth wave with a look up table
DAC Waveform Generation with DMA | This example application shows how to use the DAC with the DMA to generate a 5 kHz sinusoidal waveform without CPU intervention
DIVAS Override C Division Operator | This example application demonstrates how to override C division operator and modulus operator to use the DIVAS accelerator
DMAC USART Echo | This example application demonstrates USART transfer with DMA to receive 10 bytes and echo back the received bytes
DSU Compute CRC32 | 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
FREQM Measurement | This example application demonstrates how to use the FREQM peripheral to measure the frequency of the internal RC Oscillator
MCRAMC ECC with Fault Injection and MBIST Testing | This example application demonstrates how to test the SRAM using MBIST and the MCRAMC ECC feature on internal SRAM memory
NVMCTRL Data Flash | This example application demonstrates code execution from the main Flash memory while performing erase operation in data flash section
NVMCTRL ECC Testing | This example application demonstrates how to test the NVMCTRL ECC feature on internal Flash and Data Flash memories
NVMCTRL Read Write | This example application demonstrates how to use the NVMCTRL to erase and program the internal Flash memory
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
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 I2C EEPROM Emulation (I2C Slave) | This example application demonstrates how to use the SERCOM peripheral in slave mode
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 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 LIN Master | This example application demonstrates how to use the SERCOM USART peripheral in LIN Master mode
SERCOM USART LIN Slave | This example application demonstrates how to use the SERCOM USART peripheral in LIN Slave mode
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
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
WDT Timeout | This example shows how to generate a Watchdog timer reset by emulating a deadlock