Struct nrf52840_pac::pwm0::RegisterBlock
source · #[repr(C)]pub struct RegisterBlock {Show 21 fields
pub tasks_stop: TASKS_STOP,
pub tasks_seqstart: [TASKS_SEQSTART; 2],
pub tasks_nextstep: TASKS_NEXTSTEP,
pub events_stopped: EVENTS_STOPPED,
pub events_seqstarted: [EVENTS_SEQSTARTED; 2],
pub events_seqend: [EVENTS_SEQEND; 2],
pub events_pwmperiodend: EVENTS_PWMPERIODEND,
pub events_loopsdone: EVENTS_LOOPSDONE,
pub shorts: SHORTS,
pub inten: INTEN,
pub intenset: INTENSET,
pub intenclr: INTENCLR,
pub enable: ENABLE,
pub mode: MODE,
pub countertop: COUNTERTOP,
pub prescaler: PRESCALER,
pub decoder: DECODER,
pub loop_: LOOP,
pub seq0: SEQ,
pub seq1: SEQ,
pub psel: PSEL,
/* private fields */
}
Expand description
Register block
Fields§
§tasks_stop: TASKS_STOP
0x04 - Stops PWM pulse generation on all channels at the end of current PWM period, and stops sequence playback
tasks_seqstart: [TASKS_SEQSTART; 2]
0x08..0x10 - Description collection[n]: Loads the first PWM value on all enabled channels from sequence n, and starts playing that sequence at the rate defined in SEQ[n]REFRESH and/or DECODER.MODE. Causes PWM generation to start if not running.
tasks_nextstep: TASKS_NEXTSTEP
0x10 - Steps by one value in the current sequence on all enabled channels if DECODER.MODE=NextStep. Does not cause PWM generation to start if not running.
events_stopped: EVENTS_STOPPED
0x104 - Response to STOP task, emitted when PWM pulses are no longer generated
events_seqstarted: [EVENTS_SEQSTARTED; 2]
0x108..0x110 - Description collection[n]: First PWM period started on sequence n
events_seqend: [EVENTS_SEQEND; 2]
0x110..0x118 - Description collection[n]: Emitted at end of every sequence n, when last value from RAM has been applied to wave counter
events_pwmperiodend: EVENTS_PWMPERIODEND
0x118 - Emitted at the end of each PWM period
events_loopsdone: EVENTS_LOOPSDONE
0x11c - Concatenated sequences have been played the amount of times defined in LOOP.CNT
shorts: SHORTS
0x200 - Shortcut register
inten: INTEN
0x300 - Enable or disable interrupt
intenset: INTENSET
0x304 - Enable interrupt
intenclr: INTENCLR
0x308 - Disable interrupt
enable: ENABLE
0x500 - PWM module enable register
mode: MODE
0x504 - Selects operating mode of the wave counter
countertop: COUNTERTOP
0x508 - Value up to which the pulse generator counter counts
prescaler: PRESCALER
0x50c - Configuration for PWM_CLK
decoder: DECODER
0x510 - Configuration of the decoder
loop_: LOOP
0x514 - Number of playbacks of a loop
seq0: SEQ
0x520..0x530 - Unspecified
seq1: SEQ
0x540..0x550 - Unspecified
psel: PSEL
0x560..0x570 - Unspecified