[][src]Struct nrf52840_pac::pwm0::RegisterBlock

#[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,
    pub seq0: SEQ,
    pub seq1: SEQ,
    pub psel: PSEL,
    // some fields omitted
}

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 - 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 - Description collection[n]: First PWM period started on sequence n

events_seqend: [EVENTS_SEQEND; 2]

0x110 - 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 - Unspecified

seq1: SEQ

0x540 - Unspecified

psel: PSEL

0x560 - Unspecified

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.