3. Ensure that the DMA channel is properly configured in the DMA. The DMA channelmay be enabled at this point.4. Configure the corresponding timer.5. Select the source to be routed to the DMA channel. Write to the correspondingCHCFG register, ensuring that the CHCFG[ENBL] and CHCFG[TRIG] fields areset.NOTEThe following is an example. See chip configuration section forthe number of this device's DMA channels that have triggeringcapability.To configure source #5 transmit for use with DMA channel 2, with periodic triggeringcapability:1. Write 0x00 to CHCFG2 (base address + 0x02).2. Configure channel 2 in the DMA, including enabling the channel.3. Configure a timer for the desired trigger interval.4. Write 0xC5 to CHCFG2 (base address + 0x02).The following code example illustrates steps 1 and 4 above:In File registers.h:#define DMAMUX_BASE_ADDR 0xFC084000/* Example only ! *//* Following example assumes char is 8-bits */volatile unsigned char *CHCONFIG0 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0000);volatile unsigned char *CHCONFIG1 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0001);volatile unsigned char *CHCONFIG2 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0002);volatile unsigned char *CHCONFIG3 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0003);volatile unsigned char *CHCONFIG4 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0004);volatile unsigned char *CHCONFIG5 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0005);volatile unsigned char *CHCONFIG6 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0006);volatile unsigned char *CHCONFIG7 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0007);volatile unsigned char *CHCONFIG8 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0008);volatile unsigned char *CHCONFIG9 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0009);volatile unsigned char *CHCONFIG10= (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x000A);volatile unsigned char *CHCONFIG11= (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x000B);volatile unsigned char *CHCONFIG12= (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x000C);volatile unsigned char *CHCONFIG13= (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x000D);volatile unsigned char *CHCONFIG14= (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x000E);volatile unsigned char *CHCONFIG15= (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x000F);In File main.c:#include "registers.h"::*CHCONFIG2 = 0x00;*CHCONFIG2 = 0xC5;To enable a source without periodic triggering:1. Determine with which DMA channel the source will be associated. Note that only thefirst 2 DMA channels have periodic triggering capability.2. Clear the CHCFG[ENBL] and CHCFG[TRIG] fields of the DMA channel.Chapter 22 Direct Memory Access Multiplexer (DMAMUX)KL04 Sub-Family Reference Manual, Rev. 3.1, November 2012Freescale Semiconductor, Inc. 315