#[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

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.