Example

Description

ADC 3 Channel Conversion

This code example demonstrates how to configure ADC 3 channels to simultaneous sample by PWM trigger and store the result in the FIFO. For more details, see the README on GitHub.

Asymmetric PWM Generation

This code example demonstrates the generation of asymmetric PWM signals using two compare/capture registers available in the TCPWM block of the PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

CAN FD

This example demonstrates how to use CAN FD in Infineon's PSOC™ Control C3 MCU devices. In this example, the CANFD Node-1 sends a CAN FD frame to CANFD-Node-2 on pressing the user button and vice versa. Both the CAN FD nodes log the received data over UART serial terminal. Each time a CAN FD Frame is received, the user LED toggles. For more details, see the README on GitHub.

CORDIC

This code example demonstrates the use of the CORDIC Peripheral using PDL library functions on PSOC™ Control C3 MCU. For more details, see the README on GitHub.

DeepSleep or Hibernate Wakeup using low-power comparator

This code example demonstrates the functionality of wakeup from DeepSleep or Hibernate mode using the low-power comparator (LPCOMP) in Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

DeepSleep SRAM Retention

This code example demonstrates the use of the DeepSleep SRAM Retention and wakeup from GPIO (user button) using PDL library functions in Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

Emulated EEPROM

This example demonstrates how to use the Em_EEPROM middleware in PSoC™ Control C3 MCU devices. In this example, a counter is read from the Emulated EEPROM (Em_EEPROM), incremented, written back to the Em_EEPROM and printed on a serial terminal. This occurs on every device reset or power cycle. As a result, an incrementing value is printed on every reset. For more details, see the README on GitHub.

Fault Handling

This example demonstrates the fault handling functionality of PSoC™ Control C3 MCU using Peripheral Driver Library (PDL) System Library (SysLib). For more details, see the README on GitHub.

Free-Running Multi-Counter Watchdog Timer

This code example explains how to set up a multi-counter watchdog timer (MCWDT) using the MCWDT PDL resource to measure the timing between events in free-running mode on PSoC™ Control C3 MCU. For more details, see the README on GitHub.

GPIO Interrupt

This example demonstrates the use of a GPIO configured as an input pin to generate interrupts on PSOC™ Control C3 MCU. For more details, see the README on GitHub.

Hibernate GPIO wakeup

This code example demonstrates the use of the Hibernate and wakeup from GPIO (user button) using PDL library functions in Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

HPPASS CSG example

This example demonstrates how to use HPPASS CSG to compare the external input signal with internal 10-bit DAC reference in Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

I2C Master EzI2C Slave

This example demonstrates the use of I2C (PDL) resource in Master mode with an EzI2C slave. The I2C master is configured to send command packets to control a user LED on the slave. Both the slave and the master can be configured on the same kit. For more details, see the README on GitHub.

I2C Master Slave

This code example demonstrates the use of the I2C resource in PDL master and slave modes both on the Infineon's PSOC™ Control C3 MCU devices. The I2C master is configured to send command packets to control a user LED on the slave. For more details, see the README on GitHub.

I2C Slave Deepsleep wakeup

This code example demonstrates the operation of the I2C resource in Deep Sleep mode. After programming, the application starts automatically. The UART terminal displays the slave initialization and the MCU entering Deep Sleep mode. Using the BCP software, send the command to wake the device up from Deep Sleep and display a wakeup message on the terminal of Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

I2C Slave Using Callback

This example demonstrates the operation of the I2C (PDL) resource in Slave mode using callbacks. For more details, see the README on GitHub.

IPC

This example demonstrates the use of the Inter Processor Communication (IPC) resource for PSoC™ Control MCU. The CM33 Non-Secure project is configured to send IPC interrupts to control a user LED on the CM33 Secure project. For more details, see the README on GitHub.

Kill PWM cycle-by-cycle using HPPASS CSG

This example demonstrates how to use the comparator and slope generator (CSG) of a high-performance programmable analog subsystem (HPPASS) to kill PWM cycle-by-cycle in Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

MOTIF Stand alone MCP mode

This code example demonstrates the MOTIF in standalone multi-channel mode. MOTIF is configured to generate the High side modulated PWM, and low side is completely ON. For more details, see the README on GitHub.

On-chip temperature sensor

This example demonstrates how to read the internal temperature of Infineon's PSOC™ Control C3 MCU devices through the on-chip temperature sensor, SAR ADC, and autonomous controller (AC) of high-performance programmable analog subsystem (HPPASS). The temperature value can be displayed on a UART terminal using the user button. For more details, see the README on GitHub.

PWM channels with DT in center-aligned mode

This code example configures three TCPWM timers with dead-time (DT) to generate 6 PWM outputs in complementary mode. All timers start simultaneously with an external trigger. For more details, see the README on GitHub.

PWM channels with DT in edge-aligned mode

This code example configures three TCPWM timers with dead-time (DT) to generate 6 PWM outputs in complementary mode. All timers start simultaneously with an external trigger. For more details, see the README on GitHub.

PWM Square Wave

This code example generates a square wave using the PWM driver. An LED connected to the PWM output pin blinks at 2 Hz. For more details, see the README on GitHub.

RTC Basics

This example demonstrates the usage of the real-time clock (RTC) in PSOC™ Control C3 MCU. It shows how to get and set the time in the RTC using the RTC PDL API. For more details, see the README on GitHub.

RTC periodic wakeup

This code example demonstrates how to enter the DeepSleep and Hibernate modes, and wakeup using the RTC alarm on PSOC™ Control C3 MCU. For more details, see the README on GitHub.

SAR ADC basic

This example demonstrates how to use HPPASS SAR ADC to measure the external input voltage in Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

SAR ADC conversion time

This example demonstrates how to configure the high-performance programmable analog subsystem (HPPASS) SAR ADC multiple channels and get the ADC conversion time of these channels with maximum frequency by TCPWM in Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

SAR ADC differential measurement

This example demonstrates how to use a high-performance programmable analog subsystem (HPPASS) SAR ADC pseudo-differential feature to measure the differential inputs voltage in Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

SAR ADC limit detection

This example explains how to use the high-performance programmable analog subsystem (HPPASS) SAR ADC limit detection function to detect the analog input voltage level in Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

SCB SPI master

This example demonstrates the use of the SPI Serial Communication Block (SCB) resource for PSOC™ Control C3 MCU: in master mode and slave mode. The SPI master is configured to send command packets to control a user LED on the slave. For more details, see the README on GitHub.

SCB SPI master with DMA

This example demonstrates the use of the SPI Serial Communication Block (SCB) resource for PSOC™ Control C3 MCU in master mode using DMA. The SPI master is configured to send command packets to control a user LED on the slave. Both the master and slave can be on the same device or on different devices. For more details, see the README on GitHub.

SCB UART Transmit and Receive using DMA

This code example demonstrates the UART transmit and receive operation in PSoC™ Control C3 MCU using DMA. The application uses a serial terminal to read data and echoes what is received. UART is configured to perform both transmit and receive operations. For more details, see the README on GitHub.

Smart IO with GPIO

This example uses the smart I/O peripheral in PSOC™ Control C3 MCU to connect the button input pin to an output pin to toggle an external LED. There is no CPU usage except for the initialization of GPIO and smart I/O. For more details, see the README on GitHub.

SVPWM using CORDIC

This code example demonstrates the SVPWM technique using CORDIC IP on PSOC™ Control C3 MCU devices. SVPWM is widley used modulation technique in motor control application. For more details, see the README on GitHub.

TCPWM Capture

This code example demonstrates how to use the tcpwm capture on the PSOC™ Control C3 MCU. The code example uses two tcpwm counters: One counter configured as a PWM generator. The generated signal has a frequency of 100KHz with 25% duty cycle. One counter configured in capture mode. It will capture the period and duty cycle of the generated PWM. For more details, see the README on GitHub.

TCPWM Counter

This code example demonstrates how to use the tcpwm counter on the PSOC™ Control C3 MCU. The counter is started by pwm signal and work with 200KHz clock frequency. Enable the counter CC0 match interrupt, when counter up to CC0 match value generates the interrupt to toggle user LED. For more details, see the README on GitHub.

TCPWM two Counters

This code example demonstrates how to use the tcpwm 2 counters on the PSOC™ Control C3 MCU to generate square PWM to drive 2 leds with different period and duty. For more details, see the README on GitHub.

Toggle LED with SysTick Timer

This code example demonstrates how to use the SysTick timer to generate a timer interrupt on PSOC™ Control C3 MCU. For more details, see the README on GitHub.

Trigger

This example demonstrates how to use trigger multiplexer and one-to-one trigger in Infineon's PSOC™ Control C3 MCU devices. For more details, see the README on GitHub.

UART Half Duplex

This example demonstrates the UART (HAL) half duplex operation on PSOC™ Control C3 MCU. For more details, see the README on GitHub.

UART Transmit and Receive

This example demonstrates the UART (PDL) transmit and receive operation on PSOC™ Control C3 MCU. For more details, see the README on GitHub.

Watchdog Timer

This example explains how to set up a Watchdog Timer (WDT) using the WDT PDL resource. The WDT resets the device if it is not serviced or "kicked" within the configured timeout interval. For more details, see the README on GitHub.