Kinetis SDK v.1.3 API Reference Manual  Rev. 0
Freescale Semiconductor, Inc.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
fsl_sim_hal_MK20D10.h File Reference

Macros

#define FSL_SIM_SCGC_BIT(SCGCx, n)   (((SCGCx-1U)<<5U) + n)
 SIM SCGC bit index. More...
 

Enumerations

enum  clock_wdog_src_k20d10_t {
  kClockWdogSrcLpoClk,
  kClockWdogSrcAltClk
}
 WDOG clock source select. More...
 
enum  clock_trace_src_k20d10_t {
  kClockTraceSrcMcgoutClk,
  kClockTraceSrcCoreClk
}
 Debug trace clock source select. More...
 
enum  clock_port_filter_src_k20d10_t {
  kClockPortFilterSrcBusClk,
  kClockPortFilterSrcLpoClk
}
 PORTx digital input filter clock source select. More...
 
enum  clock_lptmr_src_k20d10_t {
  kClockLptmrSrcMcgIrClk,
  kClockLptmrSrcLpoClk,
  kClockLptmrSrcEr32kClk,
  kClockLptmrSrcOsc0erClk
}
 LPTMR clock source select. More...
 
enum  clock_time_src_k20d10_t {
  kClockTimeSrcCoreSysClk,
  kClockTimeSrcPllFllSel,
  kClockTimeSrcOsc0erClk,
  kClockTimeSrcExt
}
 SIM timestamp clock source. More...
 
enum  clock_rmii_src_k20d10_t {
  kClockRmiiSrcExtalClk,
  kClockRmiiSrcExt
}
 SIM RMII clock source. More...
 
enum  clock_flexcan_src_k20d10_t {
  kClockFlexcanSrcOsc0erClk,
  kClockFlexcanSrcBusClk
}
 FLEXCAN clock source select. More...
 
enum  clock_sdhc_src_k20d10_t {
  kClockSdhcSrcCoreSysClk,
  kClockSdhcSrcPllFllSel,
  kClockSdhcSrcOsc0erClk,
  kClockSdhcSrcExt
}
 SDHC clock source. More...
 
enum  clock_sai_src_k20d10_t {
  kClockSaiSrcSysClk = 0U,
  kClockSaiSrcOsc0erClk = 1U,
  kClockSaiSrcPllClk = 3U
}
 SAI clock source. More...
 
enum  clock_tsi_active_mode_src_k20d10_t {
  kClockTsiActiveSrcBusClk,
  kClockTsiActiveSrcMcgIrClk,
  kClockTsiActiveSrcOsc0erClk
}
 TSI Active Mode clock source. More...
 
enum  clock_tsi_lp_mode_src_k20d10_t {
  kClockTsiLpSrcLpoClk,
  kClockTsiLpSrcEr32kClk
}
 TSI Low-power Mode clock source. More...
 
enum  clock_pllfll_sel_k20d10_t {
  kClockPllFllSelFll = 0U,
  kClockPllFllSelPll = 1U
}
 SIM PLLFLLSEL clock source select. More...
 
enum  clock_er32k_src_k20d10_t {
  kClockEr32kSrcOsc0 = 0U,
  kClockEr32kSrcRtc = 2U,
  kClockEr32kSrcLpo = 3U
}
 SIM external reference clock source select (OSC32KSEL). More...
 
enum  clock_clkout_src_k20d10_t {
  kClockClkoutSelFlexbusClk = 0U,
  kClockClkoutSelFlashClk = 2U,
  kClockClkoutSelLpoClk = 3U,
  kClockClkoutSelMcgIrClk = 4U,
  kClockClkoutSelRtc32kClk = 5U,
  kClockClkoutSelOsc0erClk = 6U
}
 SIM CLKOUT_SEL clock source select. More...
 
enum  clock_rtcout_src_k20d10_t {
  kClockRtcoutSrc1Hz,
  kClockRtcoutSrc32kHz
}
 SIM RTCCLKOUTSEL clock source select. More...
 
enum  sim_adc_pretrg_sel_k20d10_t {
  kSimAdcPretrgselA,
  kSimAdcPretrgselB
}
 SIM ADCx pre-trigger select. More...
 
enum  sim_adc_trg_sel_k20d10_t {
  kSimAdcTrgselExt = 0U,
  kSimAdcTrgSelHighSpeedComp0 = 1U,
  kSimAdcTrgSelHighSpeedComp1 = 2U,
  kSimAdcTrgSelHighSpeedComp2 = 3U,
  kSimAdcTrgSelPit0 = 4U,
  kSimAdcTrgSelPit1 = 5U,
  kSimAdcTrgSelPit2 = 6U,
  kSimAdcTrgSelPit3 = 7U,
  kSimAdcTrgSelFtm0 = 8U,
  kSimAdcTrgSelFtm1 = 9U,
  kSimAdcTrgSelFtm2 = 10U,
  kSimAdcTrgSelRtcAlarm = 12U,
  kSimAdcTrgSelRtcSec = 13U,
  kSimAdcTrgSelLptimer = 14U
}
 SIM ADCx trigger select. More...
 
enum  sim_uart_rxsrc_k20d10_t {
  kSimUartRxsrcPin,
  kSimUartRxsrcCmp0,
  kSimUartRxsrcCmp1
}
 SIM UART receive data source select. More...
 
enum  sim_uart_txsrc_k20d10_t {
  kSimUartTxsrcPin,
  kSimUartTxsrcFtm1,
  kSimUartTxsrcFtm2
}
 SIM UART transmit data source select. More...
 
enum  sim_ftm_trg_src_k20d10_t {
  kSimFtmTrgSrc0,
  kSimFtmTrgSrc1
}
 SIM FlexTimer x trigger y select. More...
 
enum  sim_ftm_clk_sel_k20d10_t {
  kSimFtmClkSel0,
  kSimFtmClkSel1
}
 SIM FlexTimer external clock select. More...
 
enum  sim_ftm_ch_src_k20d10_t {
  kSimFtmChSrc0,
  kSimFtmChSrc1,
  kSimFtmChSrc2,
  kSimFtmChSrc3
}
 SIM FlexTimer x channel y input capture source select. More...
 
enum  sim_ftm_flt_sel_k20d10_t {
  kSimFtmFltSel0,
  kSimFtmFltSel1
}
 SIM FlexTimer x Fault y select. More...
 
enum  sim_tpm_clk_sel_k20d10_t {
  kSimTpmClkSel0,
  kSimTpmClkSel1
}
 SIM Timer/PWM external clock select. More...
 
enum  sim_tpm_ch_src_k20d10_t {
  kSimTpmChSrc0,
  kSimTpmChSrc1
}
 SIM Timer/PWM x channel y input capture source select. More...
 
enum  sim_cmtuartpad_strengh_k20d10_t {
  kSimCmtuartSinglePad,
  kSimCmtuartDualPad
}
 SIM CMT/UART pad drive strength. More...
 
enum  sim_ptd7pad_strengh_k20d10_t {
  kSimPtd7padSinglePad,
  kSimPtd7padDualPad
}
 SIM PTD7 pad drive strength. More...
 
enum  sim_flexbus_security_level_k20d10_t {
  kSimFbslLevel0,
  kSimFbslLevel1,
  kSimFbslLevel2,
  kSimFbslLevel3
}
 SIM FlexBus security level. More...
 
enum  sim_clock_gate_name_k20d10_t {
  kSimClockGateUart4 = FSL_SIM_SCGC_BIT(1U, 10U),
  kSimClockGateUart5 = FSL_SIM_SCGC_BIT(1U, 11U),
  kSimClockGateEnet0 = FSL_SIM_SCGC_BIT(2U, 0U),
  kSimClockGateDac0 = FSL_SIM_SCGC_BIT(2U, 12U),
  kSimClockGateDac1 = FSL_SIM_SCGC_BIT(2U, 13U),
  kSimClockGateRnga0 = FSL_SIM_SCGC_BIT(3U, 0U),
  kSimClockGateFlexcan1 = FSL_SIM_SCGC_BIT(3U, 4U),
  kSimClockGateSpi2 = FSL_SIM_SCGC_BIT(3U, 12U),
  kSimClockGateSdhc0 = FSL_SIM_SCGC_BIT(3U, 17U),
  kSimClockGateFtm2 = FSL_SIM_SCGC_BIT(3U, 24U),
  kSimClockGateAdc1 = FSL_SIM_SCGC_BIT(3U, 27U),
  kSimClockGateEwm0 = FSL_SIM_SCGC_BIT(4U, 1U),
  kSimClockGateCmt0 = FSL_SIM_SCGC_BIT(4U, 2U),
  kSimClockGateI2c0 = FSL_SIM_SCGC_BIT(4U, 6U),
  kSimClockGateI2c1 = FSL_SIM_SCGC_BIT(4U, 7U),
  kSimClockGateUart0 = FSL_SIM_SCGC_BIT(4U, 10U),
  kSimClockGateUart1 = FSL_SIM_SCGC_BIT(4U, 11U),
  kSimClockGateUart2 = FSL_SIM_SCGC_BIT(4U, 12U),
  kSimClockGateUart3 = FSL_SIM_SCGC_BIT(4U, 13U),
  kSimClockGateCmp = FSL_SIM_SCGC_BIT(4U, 19U),
  kSimClockGateVref0 = FSL_SIM_SCGC_BIT(4U, 20U),
  kSimClockGateLlwu0 = FSL_SIM_SCGC_BIT(4U, 28U),
  kSimClockGateLptmr0 = FSL_SIM_SCGC_BIT(5U, 0U),
  kSimClockGateTsi0 = FSL_SIM_SCGC_BIT(5U, 5U),
  kSimClockGatePortA = FSL_SIM_SCGC_BIT(5U, 9U),
  kSimClockGatePortB = FSL_SIM_SCGC_BIT(5U, 10U),
  kSimClockGatePortC = FSL_SIM_SCGC_BIT(5U, 11U),
  kSimClockGatePortD = FSL_SIM_SCGC_BIT(5U, 12U),
  kSimClockGatePortE = FSL_SIM_SCGC_BIT(5U, 13U),
  kSimClockGateFtf0 = FSL_SIM_SCGC_BIT(6U, 0U),
  kSimClockGateDmamux0 = FSL_SIM_SCGC_BIT(6U, 1U),
  kSimClockGateFlexcan0 = FSL_SIM_SCGC_BIT(6U, 4U),
  kSimClockGateSpi0 = FSL_SIM_SCGC_BIT(6U, 12U),
  kSimClockGateSpi1 = FSL_SIM_SCGC_BIT(6U, 13U),
  kSimClockGateSai0 = FSL_SIM_SCGC_BIT(6U, 15U),
  kSimClockGateCrc0 = FSL_SIM_SCGC_BIT(6U, 18U),
  kSimClockGatePdb0 = FSL_SIM_SCGC_BIT(6U, 22U),
  kSimClockGatePit0 = FSL_SIM_SCGC_BIT(6U, 23U),
  kSimClockGateFtm0 = FSL_SIM_SCGC_BIT(6U, 24U),
  kSimClockGateFtm1 = FSL_SIM_SCGC_BIT(6U, 25U),
  kSimClockGateAdc0 = FSL_SIM_SCGC_BIT(6U, 27U),
  kSimClockGateRtc0 = FSL_SIM_SCGC_BIT(6U, 29U),
  kSimClockGateFlexbus0 = FSL_SIM_SCGC_BIT(7U, 0U),
  kSimClockGateDma0 = FSL_SIM_SCGC_BIT(7U, 1U),
  kSimClockGateMpu0 = FSL_SIM_SCGC_BIT(7U, 2U)
}
 Clock gate name used for SIM_HAL_EnableClock/SIM_HAL_DisableClock. More...
 

Functions

static void SIM_HAL_EnableClock (SIM_Type *base, sim_clock_gate_name_t name)
 Enable the clock for specific module. More...
 
static void SIM_HAL_DisableClock (SIM_Type *base, sim_clock_gate_name_t name)
 Disable the clock for specific module. More...
 
static bool SIM_HAL_GetGateCmd (SIM_Type *base, sim_clock_gate_name_t name)
 Get the the clock gate state for specific module. More...
 
static void CLOCK_HAL_SetSdhcSrc (SIM_Type *base, uint32_t instance, clock_sdhc_src_t setting)
 Set the SDHC clock source selection. More...
 
static clock_sdhc_src_t CLOCK_HAL_GetSdhcSrc (SIM_Type *base, uint32_t instance)
 Get the SDHC clock source selection. More...
 
static void CLOCK_HAL_SetTimeSrc (SIM_Type *base, uint32_t instance, clock_time_src_t setting)
 Set the ethernet timestamp clock source selection. More...
 
static clock_time_src_t CLOCK_HAL_GetTimeSrc (SIM_Type *base, uint32_t instance)
 Get the ethernet timestamp clock source selection. More...
 
static void CLOCK_HAL_SetRmiiSrc (SIM_Type *base, uint32_t instance, clock_rmii_src_t setting)
 Set the Ethernet RMII interface clock source selection. More...
 
static clock_rmii_src_t CLOCK_HAL_GetRmiiSrc (SIM_Type *base, uint32_t instance)
 Get the Ethernet RMII interface clock source selection. More...
 
static void CLOCK_HAL_SetExternalRefClock32kSrc (SIM_Type *base, clock_er32k_src_t setting)
 Set the clock selection of ERCLK32K. More...
 
static clock_er32k_src_t CLOCK_HAL_GetExternalRefClock32kSrc (SIM_Type *base)
 Get the clock selection of ERCLK32K. More...
 
static void CLOCK_HAL_SetPllfllSel (SIM_Type *base, clock_pllfll_sel_t setting)
 Set PLL/FLL clock selection. More...
 
static clock_pllfll_sel_t CLOCK_HAL_GetPllfllSel (SIM_Type *base)
 Get PLL/FLL clock selection. More...
 
static void CLOCK_HAL_SetTraceClkSrc (SIM_Type *base, clock_trace_src_t setting)
 Set debug trace clock selection. More...
 
static clock_trace_src_t CLOCK_HAL_GetTraceClkSrc (SIM_Type *base)
 Get debug trace clock selection. More...
 
static void CLOCK_HAL_SetClkOutSel (SIM_Type *base, clock_clkout_src_t setting)
 Set CLKOUTSEL selection. More...
 
static clock_clkout_src_t CLOCK_HAL_GetClkOutSel (SIM_Type *base)
 Get CLKOUTSEL selection. More...
 
static void CLOCK_HAL_SetRtcClkOutSel (SIM_Type *base, clock_rtcout_src_t setting)
 Set RTCCLKOUTSEL selection. More...
 
static clock_rtcout_src_t CLOCK_HAL_GetRtcClkOutSel (SIM_Type *base)
 Get RTCCLKOUTSEL selection. More...
 
static void CLOCK_HAL_SetOutDiv1 (SIM_Type *base, uint8_t setting)
 Set OUTDIV1. More...
 
static uint8_t CLOCK_HAL_GetOutDiv1 (SIM_Type *base)
 Get OUTDIV1. More...
 
static void CLOCK_HAL_SetOutDiv2 (SIM_Type *base, uint8_t setting)
 Set OUTDIV2. More...
 
static uint8_t CLOCK_HAL_GetOutDiv2 (SIM_Type *base)
 Get OUTDIV2. More...
 
static void CLOCK_HAL_SetOutDiv3 (SIM_Type *base, uint8_t setting)
 Set OUTDIV3. More...
 
static uint8_t CLOCK_HAL_GetOutDiv3 (SIM_Type *base)
 Get OUTDIV3. More...
 
static void CLOCK_HAL_SetOutDiv4 (SIM_Type *base, uint8_t setting)
 Set OUTDIV4. More...
 
static uint8_t CLOCK_HAL_GetOutDiv4 (SIM_Type *base)
 Get OUTDIV4. More...
 
static uint32_t SIM_HAL_GetRamSize (SIM_Type *base)
 Gets RAM size. More...
 
static void SIM_HAL_SetPtd7PadDriveStrengthMode (SIM_Type *base, sim_ptd7pad_strengh_t setting)
 Sets the PTD7 pad drive strength setting. More...
 
static sim_ptd7pad_strengh_t SIM_HAL_GetPtd7PadDriveStrengthMode (SIM_Type *base)
 Gets the PTD7 pad drive strength setting. More...
 
static void SIM_HAL_SetFlexbusSecurityLevelMode (SIM_Type *base, sim_flexbus_security_level_t setting)
 Sets the FlexBus security level setting. More...
 
static sim_flexbus_security_level_t SIM_HAL_GetFlexbusSecurityLevelMode (SIM_Type *base)
 Gets the FlexBus security level setting. More...
 
void SIM_HAL_SetFtmTriggerSrcMode (SIM_Type *base, uint32_t instance, uint8_t trigger, sim_ftm_trg_src_t select)
 Sets the FlexTimer x hardware trigger y source select setting. More...
 
sim_ftm_trg_src_t SIM_HAL_GetFtmTriggerSrcMode (SIM_Type *base, uint32_t instance, uint8_t trigger)
 Gets the FlexTimer x hardware trigger y source select setting. More...
 
void SIM_HAL_SetFtmExternalClkPinMode (SIM_Type *base, uint32_t instance, sim_ftm_clk_sel_t select)
 Sets the FlexTimer x external clock pin select setting. More...
 
sim_ftm_clk_sel_t SIM_HAL_GetFtmExternalClkPinMode (SIM_Type *base, uint32_t instance)
 Gets the FlexTimer x external clock pin select setting. More...
 
void SIM_HAL_SetFtmChSrcMode (SIM_Type *base, uint32_t instance, uint8_t channel, sim_ftm_ch_src_t select)
 Sets the FlexTimer x channel y input capture source select setting. More...
 
sim_ftm_ch_src_t SIM_HAL_GetFtmChSrcMode (SIM_Type *base, uint32_t instance, uint8_t channel)
 Gets the FlexTimer x channel y input capture source select setting. More...
 
void SIM_HAL_SetFtmFaultSelMode (SIM_Type *base, uint32_t instance, uint8_t fault, sim_ftm_flt_sel_t select)
 Sets the FlexTimer x fault y select setting. More...
 
sim_ftm_flt_sel_t SIM_HAL_GetFtmFaultSelMode (SIM_Type *base, uint32_t instance, uint8_t fault)
 Gets the FlexTimer x fault y select setting. More...
 
static uint32_t SIM_HAL_GetFamId (SIM_Type *base)
 Gets the Kinetis Fam ID in System Device ID register (SIM_SDID). More...
 
static uint32_t SIM_HAL_GetPinCntId (SIM_Type *base)
 Gets the Kinetis Pincount ID in System Device ID register (SIM_SDID). More...
 
static uint32_t SIM_HAL_GetRevId (SIM_Type *base)
 Gets the Kinetis Revision ID in the System Device ID register (SIM_SDID). More...
 
static uint32_t SIM_HAL_GetFlexnvmSize (SIM_Type *base)
 Gets the FlexNVM size in the Flash Configuration Register 1 (SIM_FCFG). More...
 
static uint32_t SIM_HAL_GetProgramFlashSize (SIM_Type *base)
 Gets the program flash size in the Flash Configuration Register 1 (SIM_FCFG). More...
 
static uint32_t SIM_HAL_GetEepromSize (SIM_Type *base)
 Gets the EEProm size in the Flash Configuration Register 1 (SIM_FCFG). More...
 
static uint32_t SIM_HAL_GetFlexnvmPartition (SIM_Type *base)
 Gets the FlexNVM partition in the Flash Configuration Register 1 (SIM_FCFG). More...
 
static void SIM_HAL_SetFlashDoze (SIM_Type *base, uint32_t setting)
 Sets the Flash Doze in the Flash Configuration Register 1 (SIM_FCFG). More...
 
static uint32_t SIM_HAL_GetFlashDoze (SIM_Type *base)
 Gets the Flash Doze in the Flash Configuration Register 1 (SIM_FCFG). More...
 
static void SIM_HAL_SetFlashDisableCmd (SIM_Type *base, bool disable)
 Sets the Flash disable setting. More...
 
static bool SIM_HAL_GetFlashDisableCmd (SIM_Type *base)
 Gets the Flash disable setting. More...
 
static uint32_t SIM_HAL_GetFlashMaxAddrBlock0 (SIM_Type *base)
 Gets the Flash maximum address block 0 in the Flash Configuration Register 1 (SIM_FCFG). More...
 
static uint32_t SIM_HAL_GetFlashMaxAddrBlock1 (SIM_Type *base)
 Gets the Flash maximum address block 1 in Flash Configuration Register 2. More...
 
static uint32_t SIM_HAL_GetProgramFlashCmd (SIM_Type *base)
 Gets the program flash in the Flash Configuration Register 2. More...
 
static bool SIM_HAL_GetSwapProgramFlash (SIM_Type *base)
 Gets the Swap program flash flag in the Flash Configuration Register 2. More...
 
IP related clock feature APIs
void CLOCK_HAL_SetOutDiv (SIM_Type *base, uint8_t outdiv1, uint8_t outdiv2, uint8_t outdiv3, uint8_t outdiv4)
 Sets the clock out dividers setting. More...
 
void CLOCK_HAL_GetOutDiv (SIM_Type *base, uint8_t *outdiv1, uint8_t *outdiv2, uint8_t *outdiv3, uint8_t *outdiv4)
 Gets the clock out dividers setting. More...
 
void SIM_HAL_SetAdcAlternativeTriggerCmd (SIM_Type *base, uint32_t instance, bool enable)
 Sets the ADCx alternate trigger enable setting. More...
 
bool SIM_HAL_GetAdcAlternativeTriggerCmd (SIM_Type *base, uint32_t instance)
 Gets the ADCx alternate trigger enable setting. More...
 
void SIM_HAL_SetAdcPreTriggerMode (SIM_Type *base, uint32_t instance, sim_adc_pretrg_sel_t select)
 Sets the ADCx pre-trigger select setting. More...
 
sim_adc_pretrg_sel_t SIM_HAL_GetAdcPreTriggerMode (SIM_Type *base, uint32_t instance)
 Gets the ADCx pre-trigger select setting. More...
 
void SIM_HAL_SetAdcTriggerMode (SIM_Type *base, uint32_t instance, sim_adc_trg_sel_t select)
 Sets the ADCx trigger select setting. More...
 
sim_adc_trg_sel_t SIM_HAL_GetAdcTriggerMode (SIM_Type *base, uint32_t instance)
 Gets the ADCx trigger select setting. More...
 
void SIM_HAL_SetAdcTriggerModeOneStep (SIM_Type *base, uint32_t instance, bool altTrigEn, sim_adc_pretrg_sel_t preTrigSel, sim_adc_trg_sel_t trigSel)
 Sets the ADCx trigger select setting in one function. More...
 
void SIM_HAL_SetUartRxSrcMode (SIM_Type *base, uint32_t instance, sim_uart_rxsrc_t select)
 Sets the UARTx receive data source select setting. More...
 
sim_uart_rxsrc_t SIM_HAL_GetUartRxSrcMode (SIM_Type *base, uint32_t instance)
 Gets the UARTx receive data source select setting. More...
 
void SIM_HAL_SetUartTxSrcMode (SIM_Type *base, uint32_t instance, sim_uart_txsrc_t select)
 Sets the UARTx transmit data source select setting. More...
 
sim_uart_txsrc_t SIM_HAL_GetUartTxSrcMode (SIM_Type *base, uint32_t instance)
 Gets the UARTx transmit data source select setting. More...
 

Function Documentation

static void SIM_HAL_EnableClock ( SIM_Type *  base,
sim_clock_gate_name_t  name 
)
inlinestatic

This function enables the clock for specific module.

Parameters
baseBase address for current SIM instance.
nameName of the module to enable.
static void SIM_HAL_DisableClock ( SIM_Type *  base,
sim_clock_gate_name_t  name 
)
inlinestatic

This function disables the clock for specific module.

Parameters
baseBase address for current SIM instance.
nameName of the module to disable.
static bool SIM_HAL_GetGateCmd ( SIM_Type *  base,
sim_clock_gate_name_t  name 
)
inlinestatic

This function will get the clock gate state for specific module.

Parameters
baseBase address for current SIM instance.
nameName of the module to get.
Returns
state true - ungated(Enabled), false - gated (Disabled)
static void CLOCK_HAL_SetSdhcSrc ( SIM_Type *  base,
uint32_t  instance,
clock_sdhc_src_t  setting 
)
inlinestatic

This function sets the SDHC clock source selection.

Parameters
baseBase address for current SIM instance.
instanceIP instance.
settingThe value to set.
static clock_sdhc_src_t CLOCK_HAL_GetSdhcSrc ( SIM_Type *  base,
uint32_t  instance 
)
inlinestatic

This function gets the SDHC clock source selection.

Parameters
baseBase address for current SIM instance.
instanceIP instance.
Returns
Current selection.
static void CLOCK_HAL_SetTimeSrc ( SIM_Type *  base,
uint32_t  instance,
clock_time_src_t  setting 
)
inlinestatic

This function sets the ethernet timestamp clock source selection.

Parameters
baseBase address for current SIM instance.
instanceIP instance.
settingThe value to set.
static clock_time_src_t CLOCK_HAL_GetTimeSrc ( SIM_Type *  base,
uint32_t  instance 
)
inlinestatic

This function gets the ethernet timestamp clock source selection.

Parameters
baseBase address for current SIM instance.
instanceIP instance.
Returns
Current selection.
static void CLOCK_HAL_SetRmiiSrc ( SIM_Type *  base,
uint32_t  instance,
clock_rmii_src_t  setting 
)
inlinestatic

This function sets the Ethernet RMII interface clock source selection.

Parameters
baseBase address for current SIM instance.
instanceIP instance.
settingThe value to set.
static clock_rmii_src_t CLOCK_HAL_GetRmiiSrc ( SIM_Type *  base,
uint32_t  instance 
)
inlinestatic

This function gets the Ethernet RMII interface clock source selection.

Parameters
baseBase address for current SIM instance.
instanceIP instance.
Returns
Current selection.
static void CLOCK_HAL_SetExternalRefClock32kSrc ( SIM_Type *  base,
clock_er32k_src_t  setting 
)
inlinestatic

This function sets the clock selection of ERCLK32K.

Parameters
baseBase address for current SIM instance.
settingThe value to set.
static clock_er32k_src_t CLOCK_HAL_GetExternalRefClock32kSrc ( SIM_Type *  base)
inlinestatic

This function gets the clock selection of ERCLK32K.

Parameters
baseBase address for current SIM instance.
Returns
Current selection.
static void CLOCK_HAL_SetPllfllSel ( SIM_Type *  base,
clock_pllfll_sel_t  setting 
)
inlinestatic

This function sets the selection of the high frequency clock for various peripheral clocking options

Parameters
baseBase address for current SIM instance.
settingThe value to set.
static clock_pllfll_sel_t CLOCK_HAL_GetPllfllSel ( SIM_Type *  base)
inlinestatic

This function gets the selection of the high frequency clock for various peripheral clocking options

Parameters
baseBase address for current SIM instance.
Returns
Current selection.
static void CLOCK_HAL_SetTraceClkSrc ( SIM_Type *  base,
clock_trace_src_t  setting 
)
inlinestatic

This function sets debug trace clock selection.

Parameters
baseBase address for current SIM instance.
settingThe value to set.
static clock_trace_src_t CLOCK_HAL_GetTraceClkSrc ( SIM_Type *  base)
inlinestatic

This function gets debug trace clock selection.

Parameters
baseBase address for current SIM instance.
Returns
Current selection.
static void CLOCK_HAL_SetClkOutSel ( SIM_Type *  base,
clock_clkout_src_t  setting 
)
inlinestatic

This function sets the selection of the clock to output on the CLKOUT pin.

Parameters
baseBase address for current SIM instance.
settingThe value to set.
static clock_clkout_src_t CLOCK_HAL_GetClkOutSel ( SIM_Type *  base)
inlinestatic

This function gets the selection of the clock to output on the CLKOUT pin.

Parameters
baseBase address for current SIM instance.
Returns
Current selection.
static void CLOCK_HAL_SetRtcClkOutSel ( SIM_Type *  base,
clock_rtcout_src_t  setting 
)
inlinestatic

This function sets the selection of the clock to output on the RTC_CLKOUT pin.

Parameters
baseBase address for current SIM instance.
settingThe value to set.
static clock_rtcout_src_t CLOCK_HAL_GetRtcClkOutSel ( SIM_Type *  base)
inlinestatic

This function gets the selection of the clock to output on the RTC_CLKOUT pin.

Parameters
baseBase address for current SIM instance.
Returns
Current selection.
static void CLOCK_HAL_SetOutDiv1 ( SIM_Type *  base,
uint8_t  setting 
)
inlinestatic

This function sets divide value OUTDIV1.

Parameters
baseBase address for current SIM instance.
settingThe value to set.
static uint8_t CLOCK_HAL_GetOutDiv1 ( SIM_Type *  base)
inlinestatic

This function gets divide value OUTDIV1.

Parameters
baseBase address for current SIM instance.
Returns
Current divide value.
static void CLOCK_HAL_SetOutDiv2 ( SIM_Type *  base,
uint8_t  setting 
)
inlinestatic

This function sets divide value OUTDIV2.

Parameters
baseBase address for current SIM instance.
settingThe value to set.
static uint8_t CLOCK_HAL_GetOutDiv2 ( SIM_Type *  base)
inlinestatic

This function gets divide value OUTDIV2.

Parameters
baseBase address for current SIM instance.
Returns
Current divide value.
static void CLOCK_HAL_SetOutDiv3 ( SIM_Type *  base,
uint8_t  setting 
)
inlinestatic

This function sets divide value OUTDIV3.

Parameters
baseBase address for current SIM instance.
settingThe value to set.
static uint8_t CLOCK_HAL_GetOutDiv3 ( SIM_Type *  base)
inlinestatic

This function gets divide value OUTDIV3.

Parameters
baseBase address for current SIM instance.
Returns
Current divide value.
static void CLOCK_HAL_SetOutDiv4 ( SIM_Type *  base,
uint8_t  setting 
)
inlinestatic

This function sets divide value OUTDIV4.

Parameters
baseBase address for current SIM instance.
settingThe value to set.
static uint8_t CLOCK_HAL_GetOutDiv4 ( SIM_Type *  base)
inlinestatic

This function gets divide value OUTDIV4.

Parameters
baseBase address for current SIM instance.
Returns
Current divide value.
static uint32_t SIM_HAL_GetRamSize ( SIM_Type *  base)
inlinestatic

This function gets the RAM size. The field specifies the amount of system RAM available on the device.

Parameters
baseBase address for current SIM instance.
Returns
size RAM size on the device
static void SIM_HAL_SetPtd7PadDriveStrengthMode ( SIM_Type *  base,
sim_ptd7pad_strengh_t  setting 
)
inlinestatic

This function controls the output drive strength of the PTD7 pin by selecting either one or two pads to drive it.

Parameters
baseBase address for current SIM instance.
settingPTD7 pad drive strength setting
  • 0: Single-pad drive strength for PTD7.
  • 1: Double pad drive strength for PTD7.
static sim_ptd7pad_strengh_t SIM_HAL_GetPtd7PadDriveStrengthMode ( SIM_Type *  base)
inlinestatic

This function gets the PTD7 pad drive strength setting.

Parameters
baseBase address for current SIM instance.
Returns
setting PTD7 pad drive strength setting
static void SIM_HAL_SetFlexbusSecurityLevelMode ( SIM_Type *  base,
sim_flexbus_security_level_t  setting 
)
inlinestatic

This function sets the FlexBus security level setting. If the security is enabled, this field affects which CPU operations can access the off-chip via the FlexBus and DDR controller interfaces. This field has no effect if the security is not enabled.

Parameters
baseBase address for current SIM instance.
settingFlexBus security level setting
  • 00: All off-chip accesses (op code and data) via the FlexBus and DDR controller are disallowed.
  • 10: Off-chip op code accesses are disallowed. Data accesses are allowed.
  • 11: Off-chip op code accesses and data accesses are allowed.
static sim_flexbus_security_level_t SIM_HAL_GetFlexbusSecurityLevelMode ( SIM_Type *  base)
inlinestatic

This function gets the FlexBus security level setting.

Parameters
baseBase address for current SIM instance.
Returns
setting FlexBus security level setting
static uint32_t SIM_HAL_GetFamId ( SIM_Type *  base)
inlinestatic

This function gets the Kinetis Fam ID in System Device ID register.

Parameters
baseBase address for current SIM instance.
Returns
id Kinetis Fam ID
static uint32_t SIM_HAL_GetPinCntId ( SIM_Type *  base)
inlinestatic

This function gets the Kinetis Pincount ID in System Device ID register.

Parameters
baseBase address for current SIM instance.
Returns
id Kinetis Pincount ID
static uint32_t SIM_HAL_GetRevId ( SIM_Type *  base)
inlinestatic

This function gets the Kinetis Revision ID in System Device ID register.

Parameters
baseBase address for current SIM instance.
Returns
id Kinetis Revision ID
static uint32_t SIM_HAL_GetFlexnvmSize ( SIM_Type *  base)
inlinestatic

This function gets the FlexNVM size in the Flash Configuration Register 1.

Parameters
baseBase address for current SIM instance.
Returns
size FlexNVM Size
static uint32_t SIM_HAL_GetProgramFlashSize ( SIM_Type *  base)
inlinestatic

This function gets the program flash size in the Flash Configuration Register 1.

Parameters
baseBase address for current SIM instance.
Returns
size Program flash Size
static uint32_t SIM_HAL_GetEepromSize ( SIM_Type *  base)
inlinestatic

This function gets the EEProm size in the Flash Configuration Register 1.

Parameters
baseBase address for current SIM instance.
Returns
size EEProm Size
static uint32_t SIM_HAL_GetFlexnvmPartition ( SIM_Type *  base)
inlinestatic

This function gets the FlexNVM partition in the Flash Configuration Register1

Parameters
baseBase address for current SIM instance.
Returns
setting FlexNVM partition setting
static void SIM_HAL_SetFlashDoze ( SIM_Type *  base,
uint32_t  setting 
)
inlinestatic

This function sets the Flash Doze in the Flash Configuration Register 1.

Parameters
baseBase address for current SIM instance.
settingFlash Doze setting
static uint32_t SIM_HAL_GetFlashDoze ( SIM_Type *  base)
inlinestatic

This function gets the Flash Doze in the Flash Configuration Register 1.

Parameters
baseBase address for current SIM instance.
Returns
setting Flash Doze setting
static void SIM_HAL_SetFlashDisableCmd ( SIM_Type *  base,
bool  disable 
)
inlinestatic

This function sets the Flash disable setting in the Flash Configuration Register 1.

Parameters
baseBase address for current SIM instance.
disableFlash disable setting
static bool SIM_HAL_GetFlashDisableCmd ( SIM_Type *  base)
inlinestatic

This function gets the Flash disable setting in the Flash Configuration Register 1.

Parameters
baseBase address for current SIM instance.
Returns
setting Flash disable setting
static uint32_t SIM_HAL_GetFlashMaxAddrBlock0 ( SIM_Type *  base)
inlinestatic

This function gets the Flash maximum block 0 in Flash Configuration Register 2.

Parameters
baseBase address for current SIM instance.
Returns
address Flash maximum block 0 address
static uint32_t SIM_HAL_GetFlashMaxAddrBlock1 ( SIM_Type *  base)
inlinestatic

This function gets the Flash maximum block 1 in Flash Configuration Register 1.

Parameters
baseBase address for current SIM instance.
Returns
address Flash maximum block 0 address
static uint32_t SIM_HAL_GetProgramFlashCmd ( SIM_Type *  base)
inlinestatic

This function gets the program flash maximum block 0 in Flash Configuration Register 1.

Parameters
baseBase address for current SIM instance.
Returns
status program flash status
static bool SIM_HAL_GetSwapProgramFlash ( SIM_Type *  base)
inlinestatic

This function gets the Swap program flash flag in the Flash Configuration Register 2.

Parameters
baseBase address for current SIM instance.
Returns
status - Swap program flash flag(Active or Inactive)