Module rp2040_pac::rosc
source · [−]Expand description
ROSC
Modules
Ring Oscillator control
Controls the output divider
Ring Oscillator pause control
This is used to save power by pausing the ROSC
On power-up this field is initialised to WAKE
An invalid write will also select WAKE
Warning: setup the irq before selecting dormant mode
The FREQA & FREQB registers control the frequency by controlling the drive strength of each stage
The drive strength has 4 levels determined by the number of bits set
Increasing the number of bits set increases the drive strength and increases the oscillation frequency
0 bits set is the default drive strength
1 bit set doubles the drive strength
2 bits set triples drive strength
3 bits set quadruples drive strength
For a detailed description see freqa register
Controls the phase shifted output
This just reads the state of the oscillator output so randomness is compromised if the ring oscillator is stopped or run at a harmonic of the bus frequency
Ring Oscillator Status
Structs
Register block
Type Definitions
CTRL register accessor: an alias for Reg<CTRL_SPEC>
DIV register accessor: an alias for Reg<DIV_SPEC>
DORMANT register accessor: an alias for Reg<DORMANT_SPEC>
FREQA register accessor: an alias for Reg<FREQA_SPEC>
FREQB register accessor: an alias for Reg<FREQB_SPEC>
PHASE register accessor: an alias for Reg<PHASE_SPEC>
RANDOMBIT register accessor: an alias for Reg<RANDOMBIT_SPEC>
STATUS register accessor: an alias for Reg<STATUS_SPEC>