5 Active Bridge Control Signal Generation

This application example shows the implementation of an active bridge driven with the help of the ZCD peripherals, see Figure 5-1. This solution uses no CPU intervention and can adapt to frequency changes because there are only internal analog connections and functions. It uses the EVSYS to route the signals from the ZCD output through an event channel to an I/O pin. To do this, the EVSYS must be configured properly.

Figure 5-1. Active Bridge Driver Implementation with ZCDs

The first step in the EVSYS configuration is to set the ZCD0 output as an event generator for channel 0, and the ZCD1 inverted output as an event generator for channel 1. For EVSYS channels 0 and 1, the channel generator selection register must be loaded with 0x30 to enable the ZCD0 as an event generator. To trigger events on I/O pins, the EVSYS event user must be connected to channels 0 and 1:

	EVSYS.CHANNEL0 = EVSYS_CHANNEL0_ZCD0_gc;
	EVSYS.USEREVSYSEVOUTB = EVSYS_CHANNEL00_bm;
	EVSYS.CHANNEL1 = EVSYS_CHANNEL1_ZCD1_gc;
	EVSYS.USEREVSYSEVOUTC = EVSYS_CHANNEL01_bm;

Then the input and output on the desired pins can be enabled:

	PORTE.PIN3CTRL = PORT_ISC_INPUT_DISABLE_gc;

	PORTD.PIN1CTRL = PORT_ISC_INPUT_DISABLE_gc;
	
	PORTB.OUTSET |= PIN2_bm;
	PORTB.DIRSET |= PIN2_bm;
	
	PORTC.OUTSET |= PIN2_bm;
	PORTC.DIRSET |= PIN2_bm;

The oscilloscope measurements (refer to Figure 5-2) show a successful implementation that adapts instantly to frequency changes. The I/O pins cannot drive the transistors directly, so a half-bridge or full-bridge driver with dead-band delay capabilities is necessary.

Figure 5-2. Driving Signals for the Active Bridge Implementation