![]() |
MCUXpresso SDK API Reference Manual
Rev. 0
NXP Semiconductors
|
The MCUXpresso SDK provides a clock driver for MCUXpresso SDK devices.
Clock driver provides these functions:
SYSCON clock module provides clocks, such as ADCCLK, DMICCLK, FXCOMCLK,WDTOSC, RTCOSC and SYSPLL. The functions CLOCK_EnableClock() and CLOCK_DisableClock() enables and disables the various clocks. The SYSCON clock driver provides functions to get the frequency of clocks, such as CLOCK_GetFreq(),
The SYSCON clock driver provides the function to configure the clock selected. The function CLOCK_AttachClk() is implemented for this. The function selects the clock source for a particular peripheral like MAINCLK, DMIC, FLEXCOMM, USB, ADC and PLL.
The SYSCON clock module provides the function to setup the peripheral clock dividers. The function CLOCK_SetClkDiv() configures the CLKDIV registers for various periperals like USB, DMIC, I2S, SYSTICK, AHB, ADC and also for CLKOUT and TRACE functions.
Files | |
file | fsl_clock.h |
Macros | |
#define | FLEXCOMM_CLOCKS |
Clock ip name array for FLEXCOMM. More... | |
Enumerations | |
enum | CHIP_SYSCON_MAINCLKSRC_T { SYSCON_MAINCLKSRC_FRO12M, SYSCON_MAINCLKSRC_OSC32K, SYSCON_MAINCLKSRC_XTAL32M, SYSCON_MAINCLKSRC_FRO32M, SYSCON_MAINCLKSRC_FRO48M, SYSCON_MAINCLKSRC_EXT, SYSCON_MAINCLKSRC_FRO1M } |
enum | CHIP_SYSCON_FRGCLKSRC_T { SYSCON_FRGCLKSRC_MAINCLK, SYSCON_FRGCLKSRC_OSC32M, SYSCON_FRGCLKSRC_FRO48MHZ, SYSCON_FRGCLKSRC_NONE } |
Fractional Divider clock sources. More... | |
enum | clock_name_t { , kCLOCK_MainClk = (1 << 16), kCLOCK_CoreSysClk, kCLOCK_BusClk, kCLOCK_Xtal32k, kCLOCK_Xtal32M, kCLOCK_Fro32k, kCLOCK_Fro1M, kCLOCK_Fro12M, kCLOCK_Fro32M, kCLOCK_Fro48M, kCLOCK_Fro64M, kCLOCK_ExtClk, kCLOCK_WdtClk, kCLOCK_Frg } |
enum | main_clock_src_t |
enum | clkout_clock_src_t |
enum | wdt_clock_src_t |
enum | frg_clock_src_t |
enum | apb_clock_src_t |
enum | fmeas_clock_src_t |
enum | spifi_clock_src_t |
enum | adc_clock_src_t |
enum | pwm_clock_source_t { kCLOCK_PWMOsc32Mclk = 0x0, kCLOCK_PWMFro48Mclk = 0x1, kCLOCK_PWMNoClkSel = 0x2, kCLOCK_PWMTestClk = 0x3 } |
PWM Clock source selection values. More... | |
Functions | |
uint32_t | CLOCK_GetFreq (clock_name_t clock) |
Obtains frequency of specified clock. More... | |
void | CLOCK_AttachClk (clock_attach_id_t connection) |
Selects clock source using <name>SEL register in syscon. More... | |
void | CLOCK_SetClkDiv (clock_div_name_t div_name, uint32_t divided_by_value, bool reset) |
Selects clock divider using <name>DIV register in syscon. More... | |
void | CLOCK_EnableClock (clock_ip_name_t clk) |
Enables specific AHB clock channel. More... | |
void | CLOCK_DisableClock (clock_ip_name_t clk) |
Disables specific AHB clock channel. More... | |
uint32_t | CLOCK_GetApbCLkFreq (void) |
Obtains frequency of APB Bus clock. More... | |
uint32_t | CLOCK_GetSpifiClkFreq (void) |
Return Frequency of Spifi Clock. More... | |
void | CLOCK_uDelay (uint32_t delayUs) |
Delay execution by busy waiting. More... | |
#define FLEXCOMM_CLOCKS |
Clock sources for main system clock.
enum clock_name_t |
enum main_clock_src_t |
Clock source selections for the Main Clock
enum clkout_clock_src_t |
Clock source selections for CLKOUT
enum wdt_clock_src_t |
Clock source definition for Watchdog timer
enum frg_clock_src_t |
Clock source definition for fractional divider
enum apb_clock_src_t |
Clock source definition for the APB
enum fmeas_clock_src_t |
Clock source definition for frequency measure
enum spifi_clock_src_t |
Clock source selection for SPIFI
enum adc_clock_src_t |
Clock definition for ADC
enum pwm_clock_source_t |
uint32_t CLOCK_GetFreq | ( | clock_name_t | clock | ) |
clock_name_t | specify clock to be read |
void CLOCK_AttachClk | ( | clock_attach_id_t | connection | ) |
clock_attach_id_t | specify clock mapping |
void CLOCK_SetClkDiv | ( | clock_div_name_t | div_name, |
uint32_t | divided_by_value, | ||
bool | reset | ||
) |
clock_div_name_t | specifies which DIV register we are accessing |
uint32_t | specifies divisor |
bool | true if a syscon clock reset should also be carried out |
void CLOCK_EnableClock | ( | clock_ip_name_t | clk | ) |
clock_ip_name_t | specifies which peripheral clock we are controlling |
void CLOCK_DisableClock | ( | clock_ip_name_t | clk | ) |
clock_ip_name_t | specifies which peripheral clock we are controlling |
uint32_t CLOCK_GetApbCLkFreq | ( | void | ) |
none |
uint32_t CLOCK_GetSpifiClkFreq | ( | void | ) |
void CLOCK_uDelay | ( | uint32_t | delayUs | ) |
delayUs | delay duration in micro seconds |