Kinetis SDK v.1.3 API Reference Manual
Rev. 0
Freescale Semiconductor, Inc.
|
The section describes the programming interface of the TPM HAL driver.
Data Structures | |
struct | tpm_pwm_param_t |
TPM driver PWM parameter. More... | |
Enumerations | |
enum | tpm_clock_mode_t |
TPM clock source selection for TPM_SC[CMOD]. More... | |
enum | tpm_counting_mode_t |
TPM counting mode, up or down. | |
enum | tpm_clock_ps_t |
TPM prescaler factor selection for clock source. | |
enum | tpm_trigger_source_t { kTpmTrigSel0 = 0, kTpmTrigSel1, kTpmTrigSel2, kTpmTrigSel3, kTpmTrigSel4, kTpmTrigSel5, kTpmTrigSel6, kTpmTrigSel7, kTpmTrigSel8, kTpmTrigSel9, kTpmTrigSel10, kTpmTrigSel11, kTpmTrigSel12, kTpmTrigSel13, kTpmTrigSel14, kTpmTrigSel15 } |
TPM trigger sources, please refer to the chip reference manual for available options. More... | |
enum | tpm_pwm_mode_t { kTpmEdgeAlignedPWM = 0, kTpmCenterAlignedPWM } |
TPM operation mode. More... | |
enum | tpm_pwm_edge_mode_t { kTpmHighTrue = 0, kTpmLowTrue } |
TPM PWM output pulse mode, high-true or low-true on match up. More... | |
enum | tpm_input_capture_mode_t |
TPM input capture modes. | |
enum | tpm_output_compare_mode_t |
TPM output compare modes. | |
enum | tpm_status_t { kStatusTpmSuccess = 0x00U, kStatusTpmFail = 0x01U } |
Error codes for TPM driver. More... | |
Functions | |
void | TPM_HAL_Reset (TPM_Type *base, uint32_t instance) |
Resets the TPM registers. More... | |
void | TPM_HAL_EnablePwmMode (TPM_Type *base, tpm_pwm_param_t *config, uint8_t channel) |
Enables the TPM PWM output mode. More... | |
void | TPM_HAL_DisableChn (TPM_Type *base, uint8_t channel) |
Disables the TPM channel. More... | |
void | TPM_HAL_SetClockMode (TPM_Type *base, tpm_clock_mode_t mode) |
Sets the TPM clock mode. More... | |
static tpm_clock_mode_t | TPM_HAL_GetClockMode (TPM_Type *base) |
get TPM clock mode. More... | |
static void | TPM_HAL_SetClockDiv (TPM_Type *base, tpm_clock_ps_t ps) |
Sets the TPM clock divider. More... | |
static tpm_clock_ps_t | TPM_HAL_GetClockDiv (TPM_Type *base) |
Gets the TPM clock divider. More... | |
static void | TPM_HAL_EnableTimerOverflowInt (TPM_Type *base) |
Enables the TPM peripheral timer overflow interrupt. More... | |
static void | TPM_HAL_DisableTimerOverflowInt (TPM_Type *base) |
Disables the TPM peripheral timer overflow interrupt. More... | |
static bool | TPM_HAL_IsOverflowIntEnabled (TPM_Type *base) |
Reads the bit that controls TPM timer overflow interrupt enablement. More... | |
static bool | TPM_HAL_GetTimerOverflowStatus (TPM_Type *base) |
Returns the TPM peripheral timer overflow interrupt flag. More... | |
static void | TPM_HAL_ClearTimerOverflowFlag (TPM_Type *base) |
Clears the TPM timer overflow interrupt flag. More... | |
static void | TPM_HAL_SetCpwms (TPM_Type *base, uint8_t mode) |
set TPM center-aligned PWM select. More... | |
static bool | TPM_HAL_GetCpwms (TPM_Type *base) |
Gets the TPM center-aligned PWM selection value. More... | |
static void | TPM_HAL_ClearCounter (TPM_Type *base) |
Clears the TPM peripheral current counter value. More... | |
static uint16_t | TPM_HAL_GetCounterVal (TPM_Type *base) |
Returns the TPM peripheral current counter value. More... | |
static void | TPM_HAL_SetMod (TPM_Type *base, uint16_t val) |
Sets the TPM peripheral timer modulo value. More... | |
static uint16_t | TPM_HAL_GetMod (TPM_Type *base) |
Returns the TPM peripheral counter modulo value. More... | |
static void | TPM_HAL_SetChnMsnbaElsnbaVal (TPM_Type *base, uint8_t channel, uint8_t value) |
Sets the TPM peripheral timer channel mode and edge level,. More... | |
static uint8_t | TPM_HAL_GetChnMsnbaVal (TPM_Type *base, uint8_t channel) |
Gets the TPM peripheral timer channel mode. More... | |
static uint8_t | TPM_HAL_GetChnElsnbaVal (TPM_Type *base, uint8_t channel) |
Gets the TPM peripheral timer channel edge level. More... | |
static void | TPM_HAL_EnableChnInt (TPM_Type *base, uint8_t channel) |
Enables the TPM peripheral timer channel(n) interrupt. More... | |
static void | TPM_HAL_DisableChnInt (TPM_Type *base, uint8_t channel) |
Disables the TPM peripheral timer channel(n) interrupt. More... | |
static bool | TPM_HAL_IsChnIntEnabled (TPM_Type *base, uint8_t channel) |
Gets the TPM peripheral timer channel(n) interrupt enabled or not. More... | |
static bool | TPM_HAL_GetChnStatus (TPM_Type *base, uint8_t channel) |
Returns whether any event for TPM peripheral timer channel has occurred. More... | |
static void | TPM_HAL_ClearChnInt (TPM_Type *base, uint8_t channel) |
Returns whether any event for the TPM peripheral timer channel has occurred. More... | |
static void | TPM_HAL_SetChnCountVal (TPM_Type *base, uint8_t channel, uint16_t val) |
Sets the TPM peripheral timer channel counter value. More... | |
static uint16_t | TPM_HAL_GetChnCountVal (TPM_Type *base, uint8_t channel) |
Gets the TPM peripheral timer channel counter value. More... | |
static uint32_t | TPM_HAL_GetStatusRegVal (TPM_Type *base) |
Gets the TPM peripheral timer channel event status. More... | |
static void | TPM_HAL_ClearStatusReg (TPM_Type *base, uint16_t tpm_status) |
Clears the TPM peripheral timer clear status register value,. More... | |
static void | TPM_HAL_SetTriggerSrc (TPM_Type *base, tpm_trigger_source_t trigger_num) |
Sets the TPM peripheral timer trigger. More... | |
static void | TPM_HAL_SetTriggerMode (TPM_Type *base, bool enable) |
Sets the TPM peripheral timer running on trigger or not. More... | |
static void | TPM_HAL_SetReloadOnTriggerMode (TPM_Type *base, bool enable) |
Enables the TPM timer counter reload on selected trigger or not. More... | |
static void | TPM_HAL_SetStopOnOverflowMode (TPM_Type *base, bool enable) |
Enables the TPM timer counter stop on selected trigger or not. More... | |
static void | TPM_HAL_EnableGlobalTimeBase (TPM_Type *base, bool enable) |
Enables the TPM timer global time base. More... | |
static void | TPM_HAL_SetDbgMode (TPM_Type *base, bool enable) |
Sets BDM mode. More... | |
static void | TPM_HAL_SetWaitMode (TPM_Type *base, bool enable) |
Sets the WAIT mode behavior. More... | |
Variables | |
const uint32_t | g_tpmChannelCount [TPM_INSTANCE_COUNT] |
Table of number of channels for each TPM instance. | |
struct tpm_pwm_param_t |
Data Fields | |
tpm_pwm_mode_t | mode |
TPM PWM operation mode. | |
tpm_pwm_edge_mode_t | edgeMode |
PWM output mode. | |
uint32_t | uFrequencyHZ |
PWM period in Hz. | |
uint32_t | uDutyCyclePercent |
PWM pulse width, value should be between 0 to 100 0=inactive signal(0% duty cycle)... More... | |
uint32_t tpm_pwm_param_t::uDutyCyclePercent |
100=active signal (100% duty cycle).
enum tpm_clock_mode_t |
enum tpm_trigger_source_t |
enum tpm_pwm_mode_t |
enum tpm_pwm_edge_mode_t |
enum tpm_status_t |
void TPM_HAL_Reset | ( | TPM_Type * | base, |
uint32_t | instance | ||
) |
base | TPM module base address pointer |
instance | The TPM peripheral instance number. |
void TPM_HAL_EnablePwmMode | ( | TPM_Type * | base, |
tpm_pwm_param_t * | config, | ||
uint8_t | channel | ||
) |
base | TPM module base address pointer |
config | PWM configuration parameter |
channel | The TPM channel number. |
void TPM_HAL_DisableChn | ( | TPM_Type * | base, |
uint8_t | channel | ||
) |
base | TPM module base address pointer |
channel | The TPM channel number. |
void TPM_HAL_SetClockMode | ( | TPM_Type * | base, |
tpm_clock_mode_t | mode | ||
) |
When disabling the TPM counter, the function waits till it receives an acknowledge from the TPM clock domain.
base | TPM module base address pointer |
mode | The TPM counter clock mode (source). |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
ps | The TPM peripheral clock prescale divider |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
mode | 1 : upcounting mode 0:up_down counting mode. |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
val | The value to be set to the timer modulo |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
TPM channel operate mode, MSnB, and ELSnBA should be set at the same time.
base | The TPM base address |
channel | The TPM peripheral channel number |
value | The value to set for MSnBA and ELSnBA |
|
inlinestatic |
base | TPM module base address pointer |
channel | The TPM peripheral channel number |
|
inlinestatic |
base | TPM module base address pointer |
channel | The TPM peripheral channel number |
|
inlinestatic |
base | TPM module base address pointer |
channel | The TPM peripheral channel number |
|
inlinestatic |
base | TPM module base address pointer |
channel | The TPM peripheral channel number |
|
inlinestatic |
base | TPM module base address pointer |
channel | The TPM peripheral channel number |
|
inlinestatic |
base | TPM module base address pointer |
channel | The TPM peripheral channel number. |
|
inlinestatic |
base | TPM module base address pointer |
channel | The TPM peripheral channel number. |
|
inlinestatic |
base | TPM module base address pointer |
channel | The TPM peripheral channel number. |
val | counter value to be set |
|
inlinestatic |
base | TPM module base address pointer |
channel | The TPM peripheral channel number. |
|
inlinestatic |
base | TPM module base address pointer |
|
inlinestatic |
base | TPM module base address pointer |
tpm_status | TPM channel or overflow flag to clear |
|
inlinestatic |
base | TPM module base address pointer |
trigger_num | 0-15 |
|
inlinestatic |
base | TPM module base address pointer |
enable | true to enable, 1 to enable |
|
inlinestatic |
base | TPM module base address pointer |
enable | true to enable, false to disable. |
|
inlinestatic |
base | TPM module base address pointer |
enable | true to enable, false to disable. |
|
inlinestatic |
base | TPM module base address pointer |
enable | true to enable, false to disable. |
|
inlinestatic |
base | TPM module base address pointer |
enable | false pause, true continue work |
|
inlinestatic |
base | TPM module base address pointer |
enable | 0 continue running, 1 stop running |