Struct nrf52832_hal::pac::pwm0::RegisterBlock
source · [−]pub struct RegisterBlock {Show 21 fields
pub tasks_stop: Reg<TASKS_STOP_SPEC>,
pub tasks_seqstart: [Reg<TASKS_SEQSTART_SPEC>; 2],
pub tasks_nextstep: Reg<TASKS_NEXTSTEP_SPEC>,
pub events_stopped: Reg<EVENTS_STOPPED_SPEC>,
pub events_seqstarted: [Reg<EVENTS_SEQSTARTED_SPEC>; 2],
pub events_seqend: [Reg<EVENTS_SEQEND_SPEC>; 2],
pub events_pwmperiodend: Reg<EVENTS_PWMPERIODEND_SPEC>,
pub events_loopsdone: Reg<EVENTS_LOOPSDONE_SPEC>,
pub shorts: Reg<SHORTS_SPEC>,
pub inten: Reg<INTEN_SPEC>,
pub intenset: Reg<INTENSET_SPEC>,
pub intenclr: Reg<INTENCLR_SPEC>,
pub enable: Reg<ENABLE_SPEC>,
pub mode: Reg<MODE_SPEC>,
pub countertop: Reg<COUNTERTOP_SPEC>,
pub prescaler: Reg<PRESCALER_SPEC>,
pub decoder: Reg<DECODER_SPEC>,
pub loop_: Reg<LOOP_SPEC>,
pub seq0: SEQ,
pub seq1: SEQ,
pub psel: PSEL,
/* private fields */
}
Expand description
Register block
Fields
tasks_stop: Reg<TASKS_STOP_SPEC>
0x04 - Stops PWM pulse generation on all channels at the end of current PWM period, and stops sequence playback
tasks_seqstart: [Reg<TASKS_SEQSTART_SPEC>; 2]
0x08..0x10 - Description collection[0]: Loads the first PWM value on all enabled channels from sequence 0, and starts playing that sequence at the rate defined in SEQ[0]REFRESH and/or DECODER.MODE. Causes PWM generation to start it was not running.
tasks_nextstep: Reg<TASKS_NEXTSTEP_SPEC>
0x10 - Steps by one value in the current sequence on all enabled channels if DECODER.MODE=NextStep. Does not cause PWM generation to start it was not running.
events_stopped: Reg<EVENTS_STOPPED_SPEC>
0x104 - Response to STOP task, emitted when PWM pulses are no longer generated
events_seqstarted: [Reg<EVENTS_SEQSTARTED_SPEC>; 2]
0x108..0x110 - Description collection[0]: First PWM period started on sequence 0
events_seqend: [Reg<EVENTS_SEQEND_SPEC>; 2]
0x110..0x118 - Description collection[0]: Emitted at end of every sequence 0, when last value from RAM has been applied to wave counter
events_pwmperiodend: Reg<EVENTS_PWMPERIODEND_SPEC>
0x118 - Emitted at the end of each PWM period
events_loopsdone: Reg<EVENTS_LOOPSDONE_SPEC>
0x11c - Concatenated sequences have been played the amount of times defined in LOOP.CNT
shorts: Reg<SHORTS_SPEC>
0x200 - Shortcut register
inten: Reg<INTEN_SPEC>
0x300 - Enable or disable interrupt
intenset: Reg<INTENSET_SPEC>
0x304 - Enable interrupt
intenclr: Reg<INTENCLR_SPEC>
0x308 - Disable interrupt
enable: Reg<ENABLE_SPEC>
0x500 - PWM module enable register
mode: Reg<MODE_SPEC>
0x504 - Selects operating mode of the wave counter
countertop: Reg<COUNTERTOP_SPEC>
0x508 - Value up to which the pulse generator counter counts
prescaler: Reg<PRESCALER_SPEC>
0x50c - Configuration for PWM_CLK
decoder: Reg<DECODER_SPEC>
0x510 - Configuration of the decoder
loop_: Reg<LOOP_SPEC>
0x514 - Amount of playback of a loop
seq0: SEQ
0x520..0x530 - Unspecified
seq1: SEQ
0x540..0x550 - Unspecified
psel: PSEL
0x560..0x570 - Unspecified