Datasheet
SAM4S Series [DATASHEET]
Atmel-11100G-ATARM-SAM4S-Datasheet_27-May-14
934
After a reset of the PWM controller, DIVA (DIVB) and PREA (PREB) are set to ‘0’. This implies that after reset clkA
(clkB) are turned off.
At reset, all clocks provided by the modulo n counter are turned off except clock “MCK”. This situation is also true
when the PWM master clock is turned off through the Power Management Controller.
CAUTION:
Before using the PWM macrocell, the programmer must first enable the PWM clock in the Power
Management Controller (PMC).
39.6.2 PWM Channel
39.6.2.1 Channel Block Diagram
Figure 39-3. Functional View of the Channel Block Diagram
Each of the 4 channels is composed of six blocks:
A clock selector which selects one of the clocks provided by the clock generator (described in Section 39.6.1
on page 933).
A counter clocked by the output of the clock selector. This counter is incremented or decremented according
to the channel configuration and comparators matches. The size of the counter is 16 bits.
A comparator used to compute the OCx output waveform according to the counter value and the
configuration. The counter value can be the one of the channel counter or the one of the channel 0 counter
according to SYNCx bit in the “PWM Sync Channels Mode Register” (PWM_SCM).
A 2-bit configurable gray counter enables the stepper motor driver. One gray counter drives 2 channels.
A dead-time generator providing two complementary outputs (DTOHx/DTOLx) which allows to drive external
power control switches safely.
An output override block that can force the two complementary outputs to a programmed value
(OOOHx/OOOLx).
Comparator
x
Cl o ck
Se l ec t or
Channel x
Dead-Time
Gener at o r
Output
Override
OCx
DTOHx
DTOLx
Fa u l t
Protection
OOOHx
PWMHx
PWMLx
OOOLx
Counter
Channel x
Duty-Cycle
Per i o d
Update
Co u n t e r
Channel 0
MUX
SYN Cx
Dead-Time
Gener at o r
Output
Override
OCy
DTOHy
DTOLy
Fa u l t
Protection
OOOHy
PWMHy
PWMLy
OOOLy
Channel y (= x+1)
MUX
MUX
2-bit gray
counter z
Comparator
y
from
Clock
Generator
from APB
Peripheral Bus
z = 0 (x = 0, y = 1),
z = 1 (x = 2, y = 3),
z = 2 (x = 4, y = 5),
z = 3 (x = 6, y = 7)