Atmel Xplained Pro Evaluation Kit ATSAM4E-XPRO ATSAM4E-XPRO Data Sheet

Product codes
ATSAM4E-XPRO
Page of 1506
SAM4E [DATASHEET]
Atmel-11157D-ATARM-SAM4E16-SAM4E8-Datasheet_12-Jun-14
1040
40.6.3 PWM Comparison Units
The PWM provides 8
 
independent comparison units able to compare a programmed value with the current value of
the channel 0 counter (which is the channel counter of all synchronous channels, 
). These comparisons are intended to generate pulses on the event lines (used to synchronize ADC, see
), to generate software interrupts and to trigger PDC or DMA transfer requests
Figure 40-16. Comparison Unit Block Diagram
The comparison x matches when it is enabled by the bit CEN in the 
(PWM_CMPMx for the comparison x) and when the counter of the channel 0 reaches the comparison value
defined by the field CV in 
 (PWM_CMPVx for the comparison x). If the counter
of the channel 0 is center-aligned (CALG = 1 in 
), the bit CVM (in PWM_CMPVx)
defines if the comparison is made when the counter is counting up or counting down (in left alignment mode
CALG = 0, this bit is useless).
If a fault is active on the channel 0, the comparison is disabled and cannot match (see 
).
The user can define the periodicity of the comparison x by the fields CTR and CPR (in PWM_CMPVx). The
comparison is performed periodically once every CPR+1 periods of the counter of the channel 0, when the value of
the comparison period counter CPRCNT (in PWM_CMPMx) reaches the value defined by CTR. CPR is the
maximum value of the comparison period counter CPRCNT. If CPR = CTR = 0, the comparison is performed at
each period of the counter of the channel 0.
The comparison x configuration can be modified while the channel 0 is enabled by using the 
 (PWM_CMPMUPDx registers for the comparison x). In the same way, the comparison x
value can be modified while the channel 0 is enabled by using the 
(PWM_CMPVUPDx registers for the comparison x).
The update of the comparison x configuration and the comparison x value is triggered periodically after the
comparison x update period. It is defined by the field CUPR in the PWM_CMPMx. The comparison unit has an
update period counter independent from the period counter to trigger this update. When the value of the
comparison update period counter CUPRCNT (in PWM_CMPMx) reaches the value defined by CUPR, the update
=
fault on channel 0
CNT [PWM_CCNT0]
CNT [PWM_CCNT0] 
is decrementing
CALG [PWM_CMR0]
CV [PWM_CMPVx]
=
1
0
1
Comparison x
CVM [PWM_CMPVx]
=
CPRCNT [PWM_CMPMx]
CTR [PWM_CMPMx]
CEN [PWM_CMPM]x