UM11029
All information provided in this document is subject to legal disclaimers.
© NXP Semiconductors N.V. 2017. All rights reserved.
User manual
Rev. 1.0 — 16 June 2017
410 of 515
NXP Semiconductors
UM11029
Chapter 21: LPC84x SCTimer/PWM
21.7.10.4 Configure multiple states
1. In the EVn_STATE register for each event (up to 6 events, one register per event),
select the state or states (up to 2) in which this event is allowed to occur. Each state
can be selected for more than one event.
2. Determine how the event affects the system state:
In the EVn_CTRL registers (up to 6 events, one register per event), set the new state
value in the STATEV field for this event. If the event is the highest numbered in the
current state, this value is either added to the existing state value or replaces the
existing state value, depending on the field STATELD.
Remark:
If there are higher numbered events in the current state, this event cannot
change the state.
If the STATEV and STATELD values are set to zero, the state does not change.
21.7.10.5 Miscellaneous options
•
There are a certain (selectable) number of capture registers. Each capture register
can be programmed to capture the counter contents when one or more events occur.
•
If the counter is in bidirectional mode, the effect of set and clear of an output can be
made to depend on whether the counter is counting up or down by writing to the
OUTPUTDIRCTRL register.
21.7.11 Run the SCTimer/PWM
1. Configure the SCTimer/PWM (see
Section 21.7.10 “Configure the SCTimer/PWM”
2. Write to the STATE register to define the initial state. By default the initial state is state
0.
3. To start the SCTimer/PWM, write to the CTRL register:
–
Clear the counters.
–
Clear or set the STOP_L and/or STOP_H bits.
Remark:
The counter starts counting once the STOP bit is cleared as well. If the
STOP bit is set, the SCTimer/PWM waits instead for an event to occur that is
configured to start the counter.
–
For each counter, select unidirectional or bidirectional counting mode (field
BIDIR_L and/or BIDIR_H).
–
Select the prescale factor for the counter clock (CTRL register).
–
Clear the HALT_L and/or HALT_H bit. By default, the counters are halted and no
events can occur.
4. To stop the counters by software at any time, stop or halt the counter (write to
STOP_L and/or STOP_H bits or HALT_L and/or HALT_H bits in the CTRL register).
–
When the counters are stopped, both an event configured to clear the STOP bit or
software writing a zero to the STOP bit can start the counter again.
–
When the counter are halted, only a software write to clear the HALT bit can start
the counter again. No events can occur.
–
When the counters are halted, software can set any SCTimer/PWM output HIGH or
LOW directly by writing to the OUT register.