Module rp2040_pac::clocks
source · Expand description
CLOCKS
Modules§
- Clock control, can be changed on-the-fly (except for auxsrc)
- Clock divisor, can be changed on-the-fly
- Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - Clock control, can be changed on-the-fly (except for auxsrc)
- Clock divisor, can be changed on-the-fly
- Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - Clock control, can be changed on-the-fly (except for auxsrc)
- Clock divisor, can be changed on-the-fly
- Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - Clock control, can be changed on-the-fly (except for auxsrc)
- Clock divisor, can be changed on-the-fly
- Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - Clock control, can be changed on-the-fly (except for auxsrc)
- Clock divisor, can be changed on-the-fly
- Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - Clock control, can be changed on-the-fly (except for auxsrc)
- Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - Clock control, can be changed on-the-fly (except for auxsrc)
- Clock divisor, can be changed on-the-fly
- Indicates which SRC is currently selected by the glitchless mux (one-hot).
The glitchless multiplexer does not switch instantaneously (to avoid glitches), so software should poll this register to wait for the switch to complete. This register contains one decoded bit for each of the clock sources enumerated in the CTRL SRC field. At most one of these bits will be set at any time, indicating that clock is currently present at the output of the glitchless mux. Whilst switching is in progress, this register may briefly show all-0s. - Clock control, can be changed on-the-fly (except for auxsrc)
- Clock divisor, can be changed on-the-fly
- Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - Clock control, can be changed on-the-fly (except for auxsrc)
- Clock divisor, can be changed on-the-fly
- Indicates which SRC is currently selected by the glitchless mux (one-hot).
The glitchless multiplexer does not switch instantaneously (to avoid glitches), so software should poll this register to wait for the switch to complete. This register contains one decoded bit for each of the clock sources enumerated in the CTRL SRC field. At most one of these bits will be set at any time, indicating that clock is currently present at the output of the glitchless mux. Whilst switching is in progress, this register may briefly show all-0s. - Clock control, can be changed on-the-fly (except for auxsrc)
- Clock divisor, can be changed on-the-fly
- Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - indicates the state of the clock enable
- indicates the state of the clock enable
- Delays the start of frequency counting to allow the mux to settle
Delay is measured in multiples of the reference clock period - The test interval is 0.98us * 2interval, but let’s call it 1us * 2interval
The default gives a test interval of 250us - Maximum pass frequency in kHz. This is optional. Set to 0x1ffffff if you are not using the pass/fail flags
- Minimum pass frequency in kHz. This is optional. Set to 0 if you are not using the pass/fail flags
- Reference clock frequency in kHz
- Result of frequency measurement, only valid when status_done=1
- Clock sent to frequency counter, set to 0 when not required
Writing to this register initiates the frequency count - Frequency counter status
- Interrupt Enable
- Interrupt Force
- Raw Interrupts
- Interrupt status after masking & forcing
- enable clock in sleep mode
- enable clock in sleep mode
- enable clock in wake mode
- enable clock in wake mode
Structs§
- Register block
Type Aliases§
- CLK_ADC_CTRL (rw) register accessor: Clock control, can be changed on-the-fly (except for auxsrc)
- CLK_ADC_DIV (rw) register accessor: Clock divisor, can be changed on-the-fly
- CLK_ADC_SELECTED (r) register accessor: Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - CLK_GPOUT0_CTRL (rw) register accessor: Clock control, can be changed on-the-fly (except for auxsrc)
- CLK_GPOUT0_DIV (rw) register accessor: Clock divisor, can be changed on-the-fly
- CLK_GPOUT0_SELECTED (r) register accessor: Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - CLK_GPOUT1_CTRL (rw) register accessor: Clock control, can be changed on-the-fly (except for auxsrc)
- CLK_GPOUT1_DIV (rw) register accessor: Clock divisor, can be changed on-the-fly
- CLK_GPOUT1_SELECTED (r) register accessor: Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - CLK_GPOUT2_CTRL (rw) register accessor: Clock control, can be changed on-the-fly (except for auxsrc)
- CLK_GPOUT2_DIV (rw) register accessor: Clock divisor, can be changed on-the-fly
- CLK_GPOUT2_SELECTED (r) register accessor: Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - CLK_GPOUT3_CTRL (rw) register accessor: Clock control, can be changed on-the-fly (except for auxsrc)
- CLK_GPOUT3_DIV (rw) register accessor: Clock divisor, can be changed on-the-fly
- CLK_GPOUT3_SELECTED (r) register accessor: Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - CLK_PERI_CTRL (rw) register accessor: Clock control, can be changed on-the-fly (except for auxsrc)
- CLK_PERI_SELECTED (r) register accessor: Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - CLK_REF_CTRL (rw) register accessor: Clock control, can be changed on-the-fly (except for auxsrc)
- CLK_REF_DIV (rw) register accessor: Clock divisor, can be changed on-the-fly
- CLK_REF_SELECTED (r) register accessor: Indicates which SRC is currently selected by the glitchless mux (one-hot).
The glitchless multiplexer does not switch instantaneously (to avoid glitches), so software should poll this register to wait for the switch to complete. This register contains one decoded bit for each of the clock sources enumerated in the CTRL SRC field. At most one of these bits will be set at any time, indicating that clock is currently present at the output of the glitchless mux. Whilst switching is in progress, this register may briefly show all-0s. - CLK_RTC_CTRL (rw) register accessor: Clock control, can be changed on-the-fly (except for auxsrc)
- CLK_RTC_DIV (rw) register accessor: Clock divisor, can be changed on-the-fly
- CLK_RTC_SELECTED (r) register accessor: Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - CLK_SYS_CTRL (rw) register accessor: Clock control, can be changed on-the-fly (except for auxsrc)
- CLK_SYS_DIV (rw) register accessor: Clock divisor, can be changed on-the-fly
- CLK_SYS_RESUS_CTRL (rw) register accessor:
- CLK_SYS_RESUS_STATUS (r) register accessor:
- CLK_SYS_SELECTED (r) register accessor: Indicates which SRC is currently selected by the glitchless mux (one-hot).
The glitchless multiplexer does not switch instantaneously (to avoid glitches), so software should poll this register to wait for the switch to complete. This register contains one decoded bit for each of the clock sources enumerated in the CTRL SRC field. At most one of these bits will be set at any time, indicating that clock is currently present at the output of the glitchless mux. Whilst switching is in progress, this register may briefly show all-0s. - CLK_USB_CTRL (rw) register accessor: Clock control, can be changed on-the-fly (except for auxsrc)
- CLK_USB_DIV (rw) register accessor: Clock divisor, can be changed on-the-fly
- CLK_USB_SELECTED (r) register accessor: Indicates which SRC is currently selected by the glitchless mux (one-hot).
This slice does not have a glitchless mux (only the AUX_SRC field is present, not SRC) so this register is hardwired to 0x1. - ENABLED0 (r) register accessor: indicates the state of the clock enable
- ENABLED1 (r) register accessor: indicates the state of the clock enable
- FC0_DELAY (rw) register accessor: Delays the start of frequency counting to allow the mux to settle
Delay is measured in multiples of the reference clock period - FC0_INTERVAL (rw) register accessor: The test interval is 0.98us * 2interval, but let’s call it 1us * 2interval
The default gives a test interval of 250us - FC0_MAX_KHZ (rw) register accessor: Maximum pass frequency in kHz. This is optional. Set to 0x1ffffff if you are not using the pass/fail flags
- FC0_MIN_KHZ (rw) register accessor: Minimum pass frequency in kHz. This is optional. Set to 0 if you are not using the pass/fail flags
- FC0_REF_KHZ (rw) register accessor: Reference clock frequency in kHz
- FC0_RESULT (r) register accessor: Result of frequency measurement, only valid when status_done=1
- FC0_SRC (rw) register accessor: Clock sent to frequency counter, set to 0 when not required
Writing to this register initiates the frequency count - FC0_STATUS (r) register accessor: Frequency counter status
- INTE (rw) register accessor: Interrupt Enable
- INTF (rw) register accessor: Interrupt Force
- INTR (r) register accessor: Raw Interrupts
- INTS (r) register accessor: Interrupt status after masking & forcing
- SLEEP_EN0 (rw) register accessor: enable clock in sleep mode
- SLEEP_EN1 (rw) register accessor: enable clock in sleep mode
- WAKE_EN0 (rw) register accessor: enable clock in wake mode
- WAKE_EN1 (rw) register accessor: enable clock in wake mode