Struct nrf52::pwm0::RegisterBlock [] [src]

#[repr(C)]
pub struct RegisterBlock { 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, // some fields omitted }

Register block

Fields

0x04 - Stops PWM pulse generation on all channels at the end of current PWM period, and stops sequence playback

0x08 - 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.

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.

0x104 - Response to STOP task, emitted when PWM pulses are no longer generated

0x108 - Description collection[0]: First PWM period started on sequence 0

0x110 - Description collection[0]: Emitted at end of every sequence 0, when last value from RAM has been applied to wave counter

0x118 - Emitted at the end of each PWM period

0x11c - Concatenated sequences have been played the amount of times defined in LOOP.CNT

0x200 - Shortcut register

0x300 - Enable or disable interrupt

0x304 - Enable interrupt

0x308 - Disable interrupt

0x500 - PWM module enable register

0x504 - Selects operating mode of the wave counter

0x508 - Value up to which the pulse generator counter counts

0x50c - Configuration for PWM_CLK

0x510 - Configuration of the decoder

0x514 - Amount of playback of a loop