Implementation specific interface for using the Clock driver.
These items, while usable within the HAL, are not necessarily portable between devices. The diagram below shows how the clocks relate to each other. This is a superset of what is available. See the device specific Data Sheet for the exact set of clocks that are available on a specific device.
The following snippet shows the clock driver can be used to initialize all clocks in the system.
Variables | |
const cyhal_resource_inst_t | CYHAL_CLOCK_IMO |
Internal Main Oscillator: This is a fixed-frequency clock that is commonly used as a general purpose source for clocks that do not require specific frequencies or very high accuracy. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_EXT |
External Clock: This is an off-chip clock (not an oscillator). More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_ILO |
Internal Low Speed Oscillator: This is a low accuracy fixed-frequency clock in the kilohertz range that is available in sleep, deep sleep and hibernate power modes. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_LF |
Low Frequency Clock: This clock is the source for the multi-counter watchdog timers (MCWDT), and can also be a source for the RTC. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_PUMP |
Analog Pump Clock: This clock ensures precision analog performance in low voltage applications. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_BAK |
Backup Clock: This clock is available to the backup domain. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_FAST |
Fast Clock: This clock is used for the CM4 and associated AHB-Lite bus infrastructure. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_PERI |
Peripheral Clock: This is the source clock for any divided clock in the design. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_TIMER |
Timer Clock: This clock is intended as a source for high-frequency timers, such as the Energy Profiler and CPU SysTick clock. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_SLOW |
Slow Clock: This clock is used for the CM0+ CPU, Datawire and CRYPTO components and the associated CPUSS slow infrastructure. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_ALT_SYS_TICK |
AltSysTickClk: Provides an optional external source for the CM4/CM0+ SysTick timers. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_FLL |
Frequency-Locked Loop: This is a high-frequency clock suitable for most on-chip purposes. More... | |
const cyhal_resource_inst_t | CYHAL_CLOCK_HF [SRSS_NUM_HFROOT] |
High Frequency Clock: A high-frequency clock output driving specific peripherals. More... | |
const cyhal_resource_inst_t CYHAL_CLOCK_IMO |
Internal Main Oscillator: This is a fixed-frequency clock that is commonly used as a general purpose source for clocks that do not require specific frequencies or very high accuracy.
This clock is stopped in the deep sleep and hibernate power modes.
const cyhal_resource_inst_t CYHAL_CLOCK_EXT |
External Clock: This is an off-chip clock (not an oscillator).
This clock is stopped in the deep sleep and hibernate power modes.
const cyhal_resource_inst_t CYHAL_CLOCK_ILO |
Internal Low Speed Oscillator: This is a low accuracy fixed-frequency clock in the kilohertz range that is available in sleep, deep sleep and hibernate power modes.
const cyhal_resource_inst_t CYHAL_CLOCK_LF |
Low Frequency Clock: This clock is the source for the multi-counter watchdog timers (MCWDT), and can also be a source for the RTC.
const cyhal_resource_inst_t CYHAL_CLOCK_PUMP |
Analog Pump Clock: This clock ensures precision analog performance in low voltage applications.
const cyhal_resource_inst_t CYHAL_CLOCK_BAK |
Backup Clock: This clock is available to the backup domain.
Typically useful if an external WCO is not available.
const cyhal_resource_inst_t CYHAL_CLOCK_FAST |
Fast Clock: This clock is used for the CM4 and associated AHB-Lite bus infrastructure.
const cyhal_resource_inst_t CYHAL_CLOCK_PERI |
Peripheral Clock: This is the source clock for any divided clock in the design.
const cyhal_resource_inst_t CYHAL_CLOCK_TIMER |
Timer Clock: This clock is intended as a source for high-frequency timers, such as the Energy Profiler and CPU SysTick clock.
This clock is stopped in the hibernate power mode.
const cyhal_resource_inst_t CYHAL_CLOCK_SLOW |
Slow Clock: This clock is used for the CM0+ CPU, Datawire and CRYPTO components and the associated CPUSS slow infrastructure.
const cyhal_resource_inst_t CYHAL_CLOCK_ALT_SYS_TICK |
AltSysTickClk: Provides an optional external source for the CM4/CM0+ SysTick timers.
const cyhal_resource_inst_t CYHAL_CLOCK_FLL |
Frequency-Locked Loop: This is a high-frequency clock suitable for most on-chip purposes.
It is similar to a PLL, but starts up much faster and consumes less current. This clock is stopped in the deep sleep and hibernate power modes.
const cyhal_resource_inst_t CYHAL_CLOCK_HF[SRSS_NUM_HFROOT] |
High Frequency Clock: A high-frequency clock output driving specific peripherals.