Kinetis SDK v.1.3 API Reference Manual
Rev. 0
Freescale Semiconductor, Inc.
|
Macros | |
#define | FSL_SIM_SCGC_BIT(SCGCx, n) (((SCGCx-1U)<<5U) + n) |
SIM SCGC bit index. More... | |
Enumerations | |
enum | clock_cop_src_kl17z644_t { kClockCopSrcLpoClk, kClockCopSrcMcgIrClk, kClockCopSrcOsc0erClk, kClockCopSrcBusClk } |
COP clock source selection. More... | |
enum | clock_er32k_src_kl17z644_t { kClockEr32kSrcOsc0 = 0U, kClockEr32kSrcRtc = 2U, kClockEr32kSrcLpo = 3U } |
SIM external reference clock source select (OSC32KSEL). More... | |
enum | clock_osc32kout_sel_kl17z644_t { kClockOsc32koutNone, kClockOsc32koutPte0 } |
SIM external reference clock output pin select (OSC32KOUT). More... | |
enum | clock_lpuart_src_kl17z644_t { kClockLpuartSrcNone, kClockLpuartSrcIrc48M, kClockLpuartSrcOsc0erClk, kClockLpuartSrcMcgIrClk } |
SIM LPUART clock source. More... | |
enum | clock_tpm_src_kl17z644_t { kClockTpmSrcNone, kClockTpmSrcIrc48M, kClockTpmSrcOsc0erClk, kClockTpmSrcMcgIrClk } |
SIM TPM clock source. More... | |
enum | clock_usbfs_src_kl17z644_t { kClockUsbfsSrcExt, kClockUsbfsSrcIrc48M } |
SIM USB FS clock source. More... | |
enum | clock_flexio_src_kl17z644_t { kClockFlexioSrcNone, kClockFlexioSrcIrc48M, kClockFlexioSrcOsc0erClk, kClockFlexioSrcMcgIrClk } |
FLEXIO clock source. More... | |
enum | clock_lptmr_src_kl17z644_t { kClockLptmrSrcMcgIrClk, kClockLptmrSrcLpoClk, kClockLptmrSrcEr32kClk, kClockLptmrSrcOsc0erClk } |
LPTMR clock source select. More... | |
enum | clock_clkout_src_kl17z644_t { kClockClkoutSelFlashClk = 2U, kClockClkoutSelLpoClk = 3U, kClockClkoutSelMcgIrClk = 4U, kClockClkoutSelOsc0erClk = 6U, kClockClkoutSelIrc48M = 7U } |
SIM CLKOUT_SEL clock source select. More... | |
enum | clock_rtcout_src_kl17z644_t { kClockRtcoutSrc1Hz, kClockRtcoutSrcOsc0erClk } |
SIM RTCCLKOUTSEL clock source select. More... | |
enum | sim_adc_pretrg_sel_kl17z644_t { kSimAdcPretrgselA, kSimAdcPretrgselB } |
SIM ADCx pre-trigger select. More... | |
enum | sim_adc_trg_sel_kl17z644_t { kSimAdcTrgselExt = 0U, kSimAdcTrgSelComp0 = 1U, kSimAdcTrgSelPit0 = 4U, kSimAdcTrgSelPit1 = 5U, kSimAdcTrgSelTpm0 = 8U, kSimAdcTrgSelTpm1 = 9U, kSimAdcTrgSelTpm2 = 10U, kSimAdcTrgSelRtcAlarm = 12U, kSimAdcTrgSelRtcSec = 13U, kSimAdcTrgSelLptimer = 14U } |
SIM ADCx trigger select. More... | |
enum | sim_lpuart_rxsrc_kl17z644_t { kSimLpuartRxsrcPin, kSimLpuartRxsrcCmp0 } |
LPUART receive data source. More... | |
enum | sim_lpuart_txsrc_kl17z644_t { kSimLpuartTxsrcPin, kSimLpuartTxsrcTpm1, kSimLpuartTxsrcTpm2 } |
LPUART transmit data source. More... | |
enum | sim_tpm_clk_sel_kl17z644_t { kSimTpmClkSel0, kSimTpmClkSel1 } |
SIM Timer/PWM external clock select. More... | |
enum | sim_tpm_ch_src_kl17z644_t { kSimTpmChSrc0, kSimTpmChSrc1, kSimTpmChSrc2, kSimTpmChSrc3 } |
SIM Timer/PWM x channel y input capture source select. More... | |
enum | sim_clock_gate_name_kl17z644_t { kSimClockGateI2c0 = FSL_SIM_SCGC_BIT(4U, 6U), kSimClockGateI2c1 = FSL_SIM_SCGC_BIT(4U, 7U), kSimClockGateUart2 = FSL_SIM_SCGC_BIT(4U, 12U), kSimClockGateUsbfs0 = FSL_SIM_SCGC_BIT(4U, 18U), kSimClockGateCmp0 = FSL_SIM_SCGC_BIT(4U, 19U), kSimClockGateVref0 = FSL_SIM_SCGC_BIT(4U, 20U), kSimClockGateSpi0 = FSL_SIM_SCGC_BIT(4U, 22U), kSimClockGateSpi1 = FSL_SIM_SCGC_BIT(4U, 23U), kSimClockGateLptmr0 = FSL_SIM_SCGC_BIT(5U, 0U), 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), kSimClockGateLpuart0 = FSL_SIM_SCGC_BIT(5U, 20U), kSimClockGateLpuart1 = FSL_SIM_SCGC_BIT(5U, 21U), kSimClockGateFlexio0 = FSL_SIM_SCGC_BIT(5U, 31U), kSimClockGateFtf0 = FSL_SIM_SCGC_BIT(6U, 0U), kSimClockGateDmamux0 = FSL_SIM_SCGC_BIT(6U, 1U), kSimClockGateCrc0 = FSL_SIM_SCGC_BIT(6U, 18U), kSimClockGatePit0 = FSL_SIM_SCGC_BIT(6U, 23U), kSimClockGateTpm0 = FSL_SIM_SCGC_BIT(6U, 24U), kSimClockGateTpm1 = FSL_SIM_SCGC_BIT(6U, 25U), kSimClockGateTpm2 = FSL_SIM_SCGC_BIT(6U, 26U), kSimClockGateAdc0 = FSL_SIM_SCGC_BIT(6U, 27U), kSimClockGateRtc0 = FSL_SIM_SCGC_BIT(6U, 29U), kSimClockGateDma0 = FSL_SIM_SCGC_BIT(7U, 8U) } |
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_SetLpuartSrc (SIM_Type *base, uint32_t instance, clock_lpuart_src_t setting) |
Set LPUART clock source. More... | |
static clock_lpuart_src_t | CLOCK_HAL_GetLpuartSrc (SIM_Type *base, uint32_t instance) |
Get LPUART clock source. More... | |
static void | CLOCK_HAL_SetTpmSrc (SIM_Type *base, uint32_t instance, clock_tpm_src_t setting) |
Set the clock selection of TPM. More... | |
static clock_tpm_src_t | CLOCK_HAL_GetTpmSrc (SIM_Type *base, uint32_t instance) |
Get the clock selection of TPM. More... | |
static void | CLOCK_HAL_SetUsbfsSrc (SIM_Type *base, uint32_t instance, clock_usbfs_src_t setting) |
Set the selection of the clock source for the USB FS 48 MHz clock. More... | |
static clock_usbfs_src_t | CLOCK_HAL_GetUsbfsSrc (SIM_Type *base, uint32_t instance) |
Get the selection of the clock source for the USB FS 48 MHz clock. More... | |
static void | CLOCK_HAL_SetFlexioSrc (SIM_Type *base, uint32_t instance, clock_flexio_src_t setting) |
Select the clock source for FLEXIO. More... | |
static clock_flexio_src_t | CLOCK_HAL_GetFlexioSrc (SIM_Type *base, uint32_t instance) |
Get the clock source of FLEXIO. More... | |
static void | CLOCK_HAL_SetOsc32kOutSel (SIM_Type *base, clock_osc32kout_sel_t setting) |
Set the clock ERCLK32K output on selected pin. More... | |
static clock_osc32kout_sel_t | CLOCK_HAL_GetOsc32kOutSel (SIM_Type *base) |
Get output status of ERCLK32K. 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_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_SetCopSrc (SIM_Type *base, clock_cop_src_t setting) |
Set the clock selection of COP. More... | |
static clock_cop_src_t | CLOCK_HAL_GetCopSrc (SIM_Type *base) |
Get the clock selection of COP. 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_SetOutDiv4 (SIM_Type *base, uint8_t setting) |
Set OUTDIV4. More... | |
static uint8_t | CLOCK_HAL_GetOutDiv4 (SIM_Type *base) |
Get OUTDIV4. More... | |
static void | SIM_HAL_SetLpuartRxSrcMode (SIM_Type *base, uint32_t instance, sim_lpuart_rxsrc_t select) |
Sets the LPUARTx receive data source select setting. More... | |
static sim_lpuart_rxsrc_t | SIM_HAL_GetLpuartRxSrcMode (SIM_Type *base, uint32_t instance) |
Gets the LPUARTx receive data source select setting. More... | |
static void | SIM_HAL_SetLpuartTxSrcMode (SIM_Type *base, uint32_t instance, sim_lpuart_txsrc_t select) |
Sets the LPUARTx transmit data source select setting. More... | |
static sim_lpuart_rxsrc_t | SIM_HAL_GetLpuartTxSrcMode (SIM_Type *base, uint32_t instance) |
Gets the LPUARTx transmit data source select setting. More... | |
static void | SIM_HAL_SetLpuartOpenDrainCmd (SIM_Type *base, uint32_t instance, bool enable) |
Sets the LPUARTx Open Drain Enable setting. More... | |
static bool | SIM_HAL_GetLpuartOpenDrainCmd (SIM_Type *base, uint32_t instance) |
Gets the LPUARTx Open Drain Enable setting. More... | |
static void | SIM_HAL_SetUartOpenDrainCmd (SIM_Type *base, uint32_t instance, bool enable) |
Sets the UARTx Open Drain Enable setting. More... | |
static bool | SIM_HAL_GetUartOpenDrainCmd (SIM_Type *base, uint32_t instance) |
Gets the UARTx Open Drain Enable setting. More... | |
static void | SIM_HAL_SetTpmChSrcMode (SIM_Type *base, uint32_t instance, uint8_t channel, sim_tpm_ch_src_t select) |
Sets the Timer/PWM x channel y input capture source select setting. More... | |
static sim_tpm_ch_src_t | SIM_HAL_GetTpmChSrcMode (SIM_Type *base, uint32_t instance, uint8_t channel) |
Gets the Timer/PWM x channel y input capture source select setting. More... | |
static uint32_t | SIM_HAL_GetSubFamilyId (SIM_Type *base) |
Gets the Kinetis Sub-Family ID in the System Device ID register (SIM_SDID). More... | |
static uint32_t | SIM_HAL_GetSeriesId (SIM_Type *base) |
Gets the Kinetis SeriesID in the System Device ID register (SIM_SDID). 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_GetProgramFlashSize (SIM_Type *base) |
Gets the program flash size 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... | |
void | SIM_HAL_SetTpmExternalClkPinSelMode (SIM_Type *base, uint32_t instance, sim_tpm_clk_sel_t select) |
Sets the Timer/PWM x external clock pin select setting. More... | |
sim_tpm_clk_sel_t | SIM_HAL_GetTpmExternalClkPinSelMode (SIM_Type *base, uint32_t instance) |
Gets the Timer/PWM x external clock pin select setting. 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... | |
|
inlinestatic |
This function enables the clock for specific module.
base | Base address for current SIM instance. |
name | Name of the module to enable. |
|
inlinestatic |
This function disables the clock for specific module.
base | Base address for current SIM instance. |
name | Name of the module to disable. |
|
inlinestatic |
This function will get the clock gate state for specific module.
base | Base address for current SIM instance. |
name | Name of the module to get. |
|
inlinestatic |
This function sets the clock selection of TPM.
base | Base address for current SIM instance. |
instance | IP instance. |
setting | The value to set. |
|
inlinestatic |
This function gets the clock selection of TPM.
base | Base address for current SIM instance. |
instance | IP instance. |
|
inlinestatic |
This function sets the selection of the clock source for the USB FS 48 MHz clock.
base | Base address for current SIM instance. |
instance | IP instance. |
setting | The value to set. |
|
inlinestatic |
This function gets the selection of the clock source for the USB FS 48 MHz clock.
base | Base address for current SIM instance. |
instance | IP instance. |
|
inlinestatic |
This function selects the clock source for FLEXIO.
base | Base address for current SIM instance. |
instance | IP instance. |
setting | The value to set. |
|
inlinestatic |
This function gets the clock source of FLEXIO.
base | Base address for current SIM instance. |
instance | IP instance. |
|
inlinestatic |
This function sets ERCLK32K output on selected pin.
base | Base address for current SIM instance. |
setting | The value to set. |
|
inlinestatic |
This function gets the output status of ERCLK32K.
base | Base address for current SIM instance. |
|
inlinestatic |
This function sets the clock selection of ERCLK32K.
base | Base address for current SIM instance. |
setting | The value to set. |
|
inlinestatic |
This function gets the clock selection of ERCLK32K.
base | Base address for current SIM instance. |
|
inlinestatic |
This function sets the selection of the clock to output on the CLKOUT pin.
base | Base address for current SIM instance. |
setting | The value to set. |
|
inlinestatic |
This function gets the selection of the clock to output on the CLKOUT pin.
base | Base address for current SIM instance. |
|
inlinestatic |
This function sets the selection of the clock to output on the RTC_CLKOUT pin.
base | Base address for current SIM instance. |
setting | The value to set. |
|
inlinestatic |
This function gets the selection of the clock to output on the RTC_CLKOUT pin.
base | Base address for current SIM instance. |
|
inlinestatic |
This function sets the clock selection of COP.
base | Base address for current SIM instance. |
setting | The value to set. |
|
inlinestatic |
This function gets the clock selection of COP.
base | Base address for current SIM instance. |
|
inlinestatic |
This function sets divide value OUTDIV1.
base | Base address for current SIM instance. |
setting | The value to set. |
|
inlinestatic |
This function gets divide value OUTDIV1.
base | Base address for current SIM instance. |
|
inlinestatic |
This function sets divide value OUTDIV4.
base | Base address for current SIM instance. |
setting | The value to set. |
|
inlinestatic |
This function gets divide value OUTDIV4.
base | Base address for current SIM instance. |
|
inlinestatic |
This function enables/disables the UARTx Open Drain.
base | Register base address of SIM. |
instance | UART instance. |
enable | Enable/disable UARTx Open Drain
|
|
inlinestatic |
This function gets the UARTx Open Drain Enable setting.
base | Register base address of SIM. |
instance | UART instance. |
|
inlinestatic |
This function gets the Kinetis Sub-Family ID in System Device ID register.
base | Base address for current SIM instance. |
|
inlinestatic |
This function gets the Kinetis Series ID in System Device ID register.
base | Base address for current SIM instance. |
|
inlinestatic |
This function gets the Kinetis Fam ID in System Device ID register.
base | Base address for current SIM instance. |
|
inlinestatic |
This function gets the Kinetis Pincount ID in System Device ID register.
base | Base address for current SIM instance. |
|
inlinestatic |
This function gets the Kinetis Revision ID in System Device ID register.
base | Base address for current SIM instance. |
|
inlinestatic |
This function gets the program flash size in the Flash Configuration Register 1.
base | Base address for current SIM instance. |
|
inlinestatic |
This function sets the Flash Doze in the Flash Configuration Register 1.
base | Base address for current SIM instance. |
setting | Flash Doze setting |
|
inlinestatic |
This function gets the Flash Doze in the Flash Configuration Register 1.
base | Base address for current SIM instance. |
|
inlinestatic |
This function sets the Flash disable setting in the Flash Configuration Register 1.
base | Base address for current SIM instance. |
disable | Flash disable setting |
|
inlinestatic |
This function gets the Flash disable setting in the Flash Configuration Register 1.
base | Base address for current SIM instance. |
|
inlinestatic |
This function gets the Flash maximum block 0 in Flash Configuration Register 2.
base | Base address for current SIM instance. |