uint32_t CLOCK_GetFreq(clock_name_t clockName) { uint32_t freq; switch (clockName) { case kCLOCK_CoreSysClk: case kCLOCK_PlatClk: freq = CLOCK_GetOutClkFreq() / (SIM_CLKDIV1_OUTDIV1_VAL + 1); break; case kCLOCK_BusClk: freq = CLOCK_GetOutClkFreq() / (SIM_CLKDIV1_OUTDIV2_VAL + 1); break; case kCLOCK_FlexBusClk: freq = CLOCK_GetOutClkFreq() / (SIM_CLKDIV1_OUTDIV3_VAL + 1); break; case kCLOCK_FlashClk: freq = CLOCK_GetOutClkFreq() / (SIM_CLKDIV1_OUTDIV4_VAL + 1); break; case kCLOCK_PllFllSelClk: freq = CLOCK_GetPllFllSelClkFreq(); break; case kCLOCK_Er32kClk: freq = CLOCK_GetEr32kClkFreq(); break; case kCLOCK_Osc0ErClk: freq = CLOCK_GetOsc0ErClkFreq(); break; case kCLOCK_McgFixedFreqClk: freq = CLOCK_GetFixedFreqClkFreq(); break; case kCLOCK_McgInternalRefClk: freq = CLOCK_GetInternalRefClkFreq(); break; case kCLOCK_McgFllClk: freq = CLOCK_GetFllFreq(); break; case kCLOCK_McgPll0Clk: freq = CLOCK_GetPll0Freq(); break; case kCLOCK_McgIrc48MClk: freq = MCG_INTERNAL_IRC_48M; break; case kCLOCK_LpoClk: freq = LPO_CLK_FREQ; break; default: freq = 0U; break; } return freq; }
uint32_t CLOCK_GetFreq(clock_name_t clockName) { uint32_t freq; switch (clockName) { case kCLOCK_CoreSysClk: case kCLOCK_PlatClk: freq = CLOCK_GetOutClkFreq() / (SIM_CLKDIV1_OUTDIV1_VAL + 1); break; case kCLOCK_BusClk: case kCLOCK_FlashClk: freq = CLOCK_GetOutClkFreq() / (SIM_CLKDIV1_OUTDIV1_VAL + 1); freq /= (SIM_CLKDIV1_OUTDIV4_VAL + 1); break; case kCLOCK_Er32kClk: freq = CLOCK_GetEr32kClkFreq(); break; case kCLOCK_McgFixedFreqClk: freq = CLOCK_GetFixedFreqClkFreq(); break; case kCLOCK_McgInternalRefClk: freq = CLOCK_GetInternalRefClkFreq(); break; case kCLOCK_McgFllClk: freq = CLOCK_GetFllFreq(); break; case kCLOCK_LpoClk: freq = LPO_CLK_FREQ; break; case kCLOCK_Osc0ErClk: /* Please call CLOCK_SetXtal0Freq base on board setting before using OSC0 clock. */ assert(g_xtal0Freq); freq = g_xtal0Freq; break; default: freq = 0U; break; } return freq; }
uint32_t CLOCK_GetFreq(clock_name_t clockName) { uint32_t freq; switch (clockName) { case kCLOCK_CoreSysClk: case kCLOCK_PlatClk: freq = CLOCK_GetOutClkFreq() / (SIM_CLKDIV1_OUTDIV1_VAL + 1); break; case kCLOCK_BusClk: case kCLOCK_FlashClk: freq = CLOCK_GetOutClkFreq() / (SIM_CLKDIV1_OUTDIV1_VAL + 1); freq /= (SIM_CLKDIV1_OUTDIV4_VAL + 1); break; case kCLOCK_Er32kClk: freq = CLOCK_GetEr32kClkFreq(); break; case kCLOCK_Osc0ErClk: freq = CLOCK_GetOsc0ErClkFreq(); break; case kCLOCK_McgInternalRefClk: freq = CLOCK_GetInternalRefClkFreq(); break; case kCLOCK_McgPeriphClk: case kCLOCK_McgIrc48MClk: freq = CLOCK_GetPeriphClkFreq(); break; case kCLOCK_LpoClk: freq = LPO_CLK_FREQ; break; default: freq = 0U; break; } return freq; }