Jump to main content

##

# 1 Harmony 3 Peripheral Library Application Examples for SAM D20 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 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
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
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
NVMCTRL Read Write | This example application demonstrates how to use the NVMCTRL to erase and program the internal Flash memory
PM Reset Cause | This example shows how to use the PM peripheral to indicate the cause of the device reset
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
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 Emulation (I2C Client) | This example application demonstrates how to use the SERCOM peripheral in client mode
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 Blocking | This example application demonstrates how to use the SERCOM SPI peripheral to transmit and receive a block of data in a blocking manner
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 SPI Host Read Write Test Application | This is a SPI Host test application which is provided to demonstrate communication between SPI host and the corresponding SPI client application available under - apps/sercom/spi/slave/spi_write_read/firmware
SERCOM SPI Client Read Write | This example application demonstrates how to use the SERCOM SPI peripheral in client 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
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
WDT Timeout | This example shows how to generate a Watchdog timer reset by emulating a deadlock