![]() |
PDL for FM0+
Version1.0
Peripheral Driverl Library for FM0+
|
Go to the source code of this file.
Data Structures | |
struct | stc_bt_pwm_config |
Structure of PWM configuration. More... | |
struct | stc_pwm_int_sel |
structure to select the PWM interrupt More... | |
struct | stc_pwm_int_cb |
structure to set the PWM interrupt callback function More... | |
struct | stc_bt_ppg_config |
Structure of PPG configuration. More... | |
struct | stc_ppg_int_sel |
structure to select the PPG interrupt More... | |
struct | stc_ppg_int_cb |
structure to set the PPG interrupt callback function More... | |
struct | stc_bt_rt_config |
Structure of Reload timer configuration. More... | |
struct | stc_rt_int_sel |
structure to select the Reload timer interrupt More... | |
struct | stc_rt_int_cb |
structure to set the Reload timer interrupt callback function More... | |
struct | stc_bt_pwc_config |
Structure of PWC timer configuration. More... | |
struct | stc_pwc_int_sel |
structure to select the PWC timer interrupt More... | |
struct | stc_pwc_int_cb |
structure to set the PWC timer interrupt callback function More... | |
struct | stc_bt_intern_data |
BT internal data. More... | |
struct | stc_bt_instance_data |
BT instance data. More... | |
Defines | |
#define | stc_btn_t FM0P_BT_PWM_TypeDef |
#define | BT0 (*((volatile stc_btn_t *) FM0P_BT0_PWM_BASE)) |
#define | BT1 (*((volatile stc_btn_t *) FM0P_BT1_PWM_BASE)) |
#define | BT2 (*((volatile stc_btn_t *) FM0P_BT2_PWM_BASE)) |
#define | BT3 (*((volatile stc_btn_t *) FM0P_BT3_PWM_BASE)) |
#define | BT4 (*((volatile stc_btn_t *) FM0P_BT4_PWM_BASE)) |
#define | BT5 (*((volatile stc_btn_t *) FM0P_BT5_PWM_BASE)) |
#define | BT6 (*((volatile stc_btn_t *) FM0P_BT6_PWM_BASE)) |
#define | BT7 (*((volatile stc_btn_t *) FM0P_BT7_PWM_BASE)) |
#define | BT_INSTANCE_COUNT |
Typedefs | |
typedef enum en_bt_instance_index | en_bt_instance_index_t |
Enumeration to define an index for each BT instance. | |
typedef enum en_bt_io_mode | en_bt_io_mode_t |
Enumeration to define BT IO mode. | |
typedef enum en_bt_timer_mode | en_bt_timer_mode_t |
Enumeration to define timer mode of BT. | |
typedef enum en_pwm_clock_pres | en_pwm_clock_pres_t |
Enumeration to define clock prescaler of PWM timer. | |
typedef enum en_pwm_restart_enable | en_pwm_restart_enable_t |
Enumeration to define the configuration of PWM restart option. | |
typedef enum en_pwm_output_mask | en_pwm_output_mask_t |
Enumeration to define the configuration of PWM output mask. | |
typedef enum en_pwm_ext_trig | en_pwm_ext_trig_t |
Enumeration to define external trigger of PWM. | |
typedef enum en_pwm_output_polarity | en_pwm_output_polarity_t |
Enumeration to define PWM initial polarity. | |
typedef enum en_pwm_mode | en_pwm_mode_t |
Enumeration to define PWM timer mode. | |
typedef struct stc_bt_pwm_config | stc_bt_pwm_config_t |
Structure of PWM configuration. | |
typedef enum en_bt_pwm_int | en_bt_pwm_int_t |
Enumeration to define PWM interrupt type. | |
typedef struct stc_pwm_int_sel | stc_pwm_int_sel_t |
structure to select the PWM interrupt | |
typedef struct stc_pwm_int_cb | stc_pwm_int_cb_t |
structure to set the PWM interrupt callback function | |
typedef enum en_ppg_clock_pres | en_ppg_clock_pres_t |
Enumeration to define clock prescaler of PPG timer. | |
typedef enum en_ppg_restart_enable | en_ppg_restart_enable_t |
Enumeration to define the configuration of PPG restart option. | |
typedef enum en_ppg_output_mask | en_ppg_output_mask_t |
Enumeration to define the configuration of PPG output mask. | |
typedef enum en_ppg_ext_trig | en_ppg_ext_trig_t |
Enumeration to define external trigger of PPG. | |
typedef enum en_ppg_output_polarity | en_ppg_output_polarity_t |
Enumeration to define PWM initial polarity. | |
typedef enum en_ppg_mode | en_ppg_mode_t |
Enumeration to define PWM timer mode. | |
typedef struct stc_bt_ppg_config | stc_bt_ppg_config_t |
Structure of PPG configuration. | |
typedef enum en_bt_ppg_int | en_bt_ppg_int_t |
Enumeration to define PPG interrupt type. | |
typedef struct stc_ppg_int_sel | stc_ppg_int_sel_t |
structure to select the PPG interrupt | |
typedef struct stc_ppg_int_cb | stc_ppg_int_cb_t |
structure to set the PPG interrupt callback function | |
typedef enum en_rt_clock_pres | en_rt_clock_pres_t |
Enumeration to define clock prescaler of Reload timer. | |
typedef enum en_rt_ext_trigger | en_rt_ext_trigger_t |
Enumeration to define external trigger of Reload timer. | |
typedef enum en_rt_output_polarity | en_rt_output_polarity_t |
Enumeration to define Reload timer output initial polarity. | |
typedef enum en_rt_mode | en_rt_mode_t |
Enumeration to define Reload timer mode. | |
typedef enum en_rt_timer_size | en_rt_timer_size_t |
Enumeration to define Reload timer size. | |
typedef struct stc_bt_rt_config | stc_bt_rt_config_t |
Structure of Reload timer configuration. | |
typedef enum en_bt_rt_int | en_bt_rt_int_t |
Enumeration to define Reload timer interrupt type. | |
typedef struct stc_rt_int_sel | stc_rt_int_sel_t |
structure to select the Reload timer interrupt | |
typedef struct stc_rt_int_cb | stc_rt_int_cb_t |
structure to set the Reload timer interrupt callback function | |
typedef enum en_pwc_clock_pres | en_pwc_clock_pres_t |
Enumeration to define clock prescaler of PWC timer. | |
typedef enum en_pwc_measure_edge | en_pwc_measure_edge_t |
Enumeration to define measure mode of PWC timer. | |
typedef enum en_pwc_mode | en_pwc_mode_t |
Enumeration to define PWC timer mode. | |
typedef enum en_pwc_timer_size | en_pwc_timer_size_t |
Enumeration to define Reload timer size. | |
typedef struct stc_bt_pwc_config | stc_bt_pwc_config_t |
Structure of PWC timer configuration. | |
typedef enum en_bt_pwc_int | en_bt_pwc_int_t |
Enumeration to define PWC timer interrupt type. | |
typedef struct stc_pwc_int_sel | stc_pwc_int_sel_t |
structure to select the PWC timer interrupt | |
typedef struct stc_pwc_int_cb | stc_pwc_int_cb_t |
structure to set the PWC timer interrupt callback function | |
typedef struct stc_bt_intern_data | stc_bt_intern_data_t |
BT internal data. | |
typedef struct stc_bt_instance_data | stc_bt_instance_data_t |
BT instance data. | |
Enumerations | |
enum | en_bt_instance_index { BtInstanceIndexBt0, BtInstanceIndexBt1, BtInstanceIndexBt2, BtInstanceIndexBt3, BtInstanceIndexBt4, BtInstanceIndexBt5, BtInstanceIndexBt6, BtInstanceIndexBt7, BtInstanceIndexMax } |
Enumeration to define an index for each BT instance. More... | |
enum | en_bt_io_mode { BtIoMode0 = 0u, BtIoMode1, BtIoMode2, BtIoMode3, BtIoMode4, BtIoMode5, BtIoMode6, BtIoMode7, BtIoMode8 } |
Enumeration to define BT IO mode. More... | |
enum | en_bt_timer_mode { BtResetMode = 0, BtPwmMode, BtPpgMode, BtRtMode, BtPwcMode } |
Enumeration to define timer mode of BT. More... | |
enum | en_pwm_clock_pres { PwmPresNone = 0u, PwmPres1Div4, PwmPres1Div16, PwmPres1Div128, PwmPres1Div256, PwmPres1ExtClkRising, PwmPres1ExtClkFalling, PwmPres1ExtClkBoth, PwmPres1Div512, PwmPres1Div1024, PwmPres1Div2048 } |
Enumeration to define clock prescaler of PWM timer. More... | |
enum | en_pwm_restart_enable { PwmRestartDisable = 0, PwmRestartEnable } |
Enumeration to define the configuration of PWM restart option. More... | |
enum | en_pwm_output_mask { PwmOutputNormal = 0, PwmOutputMask } |
Enumeration to define the configuration of PWM output mask. More... | |
enum | en_pwm_ext_trig { PwmExtTrigDisable = 0, PwmExtTrigRising, PwmExtTrigFalling, PwmExtTrigBoth } |
Enumeration to define external trigger of PWM. More... | |
enum | en_pwm_output_polarity { PwmPolarityLow = 0, PwmPolarityHigh } |
Enumeration to define PWM initial polarity. More... | |
enum | en_pwm_mode { PwmContinuous = 0, PwmOneshot } |
Enumeration to define PWM timer mode. More... | |
enum | en_bt_pwm_int { PwmTrigInt = 0, PwmDutyMatchInt, PwmUnderflowInt } |
Enumeration to define PWM interrupt type. More... | |
enum | en_ppg_clock_pres { PpgPresNone = 0, PpgPres1Div4, PpgPres1Div16, PpgPres1Div128, PpgPres1Div256, PpgPres1ExtClkRising, PpgPres1ExtClkFalling, PpgPres1ExtClkBoth, PpgPres1Div512, PpgPres1Div1024, PpgPres1Div2048 } |
Enumeration to define clock prescaler of PPG timer. More... | |
enum | en_ppg_restart_enable { PpgRestartDisable = 0, PpgRestartEnable } |
Enumeration to define the configuration of PPG restart option. More... | |
enum | en_ppg_output_mask { PpgOutputNormal = 0, PpgOutputMask } |
Enumeration to define the configuration of PPG output mask. More... | |
enum | en_ppg_ext_trig { PpgExtTrigDisable = 0, PpgExtTrigRising, PpgExtTrigFalling, PpgExtTrigBoth } |
Enumeration to define external trigger of PPG. More... | |
enum | en_ppg_output_polarity { PpgPolarityLow = 0, PpgPolarityHigh } |
Enumeration to define PWM initial polarity. More... | |
enum | en_ppg_mode { PpgContinuous = 0, PpgOneshot } |
Enumeration to define PWM timer mode. More... | |
enum | en_bt_ppg_int { PpgTrigInt = 0, PpgUnderflowInt } |
Enumeration to define PPG interrupt type. More... | |
enum | en_rt_clock_pres { RtPresNone = 0, RtPres1Div4, RtPres1Div16, RtPres1Div128, RtPres1Div256, RtPres1ExtClkRising, RtPres1ExtClkFalling, RtPres1ExtClkBoth, RtPres1Div512, RtPres1Div1024, RtPres1Div2048 } |
Enumeration to define clock prescaler of Reload timer. More... | |
enum | en_rt_ext_trigger { RtExtTiggerDisable = 0, RtExtTiggerRisingEdge, RtExtTiggerFallingEdge, RtExtTiggerBothEdge, RtExtTiggerLowLevel, RtExtTiggerHighLevel } |
Enumeration to define external trigger of Reload timer. More... | |
enum | en_rt_output_polarity { RtPolarityLow = 0, RtPolarityHigh } |
Enumeration to define Reload timer output initial polarity. More... | |
enum | en_rt_mode { RtReload = 0, RtOneshot } |
Enumeration to define Reload timer mode. More... | |
enum | en_rt_timer_size { RtSize16Bit = 0, RtSize32Bit } |
Enumeration to define Reload timer size. More... | |
enum | en_bt_rt_int { RtTrigInt = 0, RtUnderflowInt } |
Enumeration to define Reload timer interrupt type. More... | |
enum | en_pwc_clock_pres { PwcPresNone = 0, PwcPres1Div4 = 1, PwcPres1Div16 = 2, PwcPres1Div128 = 3, PwcPres1Div256 = 4, PwcPres1Div512 = 8, PwcPres1Div1024 = 9, PwcPres1Div2048 = 10 } |
Enumeration to define clock prescaler of PWC timer. More... | |
enum | en_pwc_measure_edge { PwcMeasureRisingToFalling = 0, PwcMeasureRisingToRising, PwcMeasureFallingToFalling, PwcMeasureEitherToEither, PwcMeasureFallingToRising } |
Enumeration to define measure mode of PWC timer. More... | |
enum | en_pwc_mode { PwcContinuous = 0, PwcOneshot } |
Enumeration to define PWC timer mode. More... | |
enum | en_pwc_timer_size { PwcSize16Bit = 0, PwcSize32Bit } |
Enumeration to define Reload timer size. More... | |
enum | en_bt_pwc_int { PwcMeasureCompleteInt = 0, PwcMeasureOverflowInt } |
Enumeration to define PWC timer interrupt type. More... | |
Functions | |
en_result_t | Bt_ConfigIOMode (volatile FM0P_BT_PWM_TypeDef *pstcBt, en_bt_io_mode_t enIoMode) |
Configure BT IO mode. | |
en_result_t | Bt_SelTimerMode (volatile FM0P_BT_PWM_TypeDef *pstcBt, en_bt_timer_mode_t enTimerMode) |
Select timer function of BT. | |
en_result_t | Bt_Pwm_Init (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_bt_pwm_config_t *pstcPwmConfig) |
Initialize PWM function of BT. | |
en_result_t | Bt_Pwm_DeInit (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
De-Initialize PWM function of BT. | |
en_result_t | Bt_Pwm_EnableCount (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Enable PWM timer counting. | |
en_result_t | Bt_Pwm_DisableCount (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Disable PWM timer counting. | |
en_result_t | Bt_Pwm_EnableSwTrig (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Start PWM timer by software. | |
en_result_t | Bt_Pwm_EnableInt (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_pwm_int_sel_t *pstcIntSel, stc_pwm_int_cb_t *pstcIntCallback) |
Enable PWM timer interrupt. | |
en_result_t | Bt_Pwm_DisableInt (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_pwm_int_sel_t *pstcIntSel) |
Disable PWM timer interrupt. | |
en_int_flag_t | Bt_Pwm_GetIntFlag (volatile FM0P_BT_PWM_TypeDef *pstcBt, en_bt_pwm_int_t enIntType) |
Get interrupt flag of PWM timer. | |
en_result_t | Bt_Pwm_ClrIntFlag (volatile FM0P_BT_PWM_TypeDef *pstcBt, en_bt_pwm_int_t enIntType) |
Clear interrupt flag of PWM timer. | |
en_result_t | Bt_Pwm_WriteCycleVal (volatile FM0P_BT_PWM_TypeDef *pstcBt, uint16_t u16Cycle) |
Write Cycle value of PWM timer. | |
en_result_t | Bt_Pwm_WriteDutyVal (volatile FM0P_BT_PWM_TypeDef *pstcBt, uint16_t u16Duty) |
Write duty value of PWM timer. | |
uint16_t | Bt_Pwm_ReadCurCnt (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Read current count value of PWM timer. | |
en_result_t | Bt_Ppg_Init (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_bt_ppg_config_t *pstcPpgConfig) |
Initialize PPG function of BT. | |
en_result_t | Bt_Ppg_DeInit (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
De-Initialize PPG function of BT. | |
en_result_t | Bt_Ppg_EnableCount (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Enable PPG timer counting. | |
en_result_t | Bt_Ppg_DisableCount (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Disable PPG timer counting. | |
en_result_t | Bt_Ppg_EnableSwTrig (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Start PPG timer by software. | |
en_result_t | Bt_Ppg_EnableInt (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_ppg_int_sel_t *pstcIntSel, stc_ppg_int_cb_t *pstcIntCallback) |
Enable PPG timer interrupt. | |
en_result_t | Bt_Ppg_DisableInt (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_ppg_int_sel_t *pstcIntSel) |
Disable PPG timer interrupt. | |
en_int_flag_t | Bt_Ppg_GetIntFlag (volatile FM0P_BT_PWM_TypeDef *pstcBt, en_bt_ppg_int_t enIntType) |
Get interrupt flag of PPG timer. | |
en_result_t | Bt_Ppg_ClrIntFlag (volatile FM0P_BT_PWM_TypeDef *pstcBt, en_bt_ppg_int_t enIntType) |
Clear interrupt flag of PPG timer. | |
en_result_t | Bt_Ppg_WriteLowWidthVal (volatile FM0P_BT_PWM_TypeDef *pstcBt, uint16_t u16Val) |
Write low width count value of PPG timer. | |
en_result_t | Bt_Ppg_WriteHighWidthVal (volatile FM0P_BT_PWM_TypeDef *pstcBt, uint16_t u16Val) |
Write high width count value of PPG timer. | |
uint16_t | Bt_Ppg_ReadCurCnt (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Read current count value of PPG timer. | |
en_result_t | Bt_Rt_Init (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_bt_rt_config_t *pstcRtConfig) |
Initialize RT function of BT. | |
en_result_t | Bt_Rt_DeInit (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
De-Initialize RT function of BT. | |
en_result_t | Bt_Rt_EnableCount (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Enable Reload timer counting. | |
en_result_t | Bt_Rt_DisableCount (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Disable Reload timer counting. | |
en_result_t | Bt_Rt_EnableSwTrig (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Start Reload timer by software. | |
en_result_t | Bt_Rt_EnableInt (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_rt_int_sel_t *pstcIntSel, stc_rt_int_cb_t *pstcIntCallback) |
Enable Reload timer interrupt. | |
en_result_t | Bt_Rt_DisableInt (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_rt_int_sel_t *pstcIntSel) |
Disable Reload timer interrupt. | |
en_int_flag_t | Bt_Rt_GetIntFlag (volatile FM0P_BT_PWM_TypeDef *pstcBt, en_bt_rt_int_t enIntType) |
Get interrupt flag of Reload timer. | |
en_result_t | Bt_Rt_ClrIntFlag (volatile FM0P_BT_PWM_TypeDef *pstcBt, en_bt_rt_int_t enIntType) |
Clear interrupt flag of Reload timer. | |
en_result_t | Bt_Rt_WriteCycleVal (volatile FM0P_BT_PWM_TypeDef *pstcBt, uint16_t u16Val) |
Write count cycle of Reload timer. | |
uint16_t | Bt_Rt_ReadCurCnt (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Read current count value of Reload timer. | |
en_result_t | Bt_Pwc_Init (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_bt_pwc_config_t *pstcPwcConfig) |
Initialize PWC function of BT. | |
en_result_t | Bt_Pwc_DeInit (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
De-Initialize PWC function of BT. | |
en_result_t | Bt_Pwc_EnableCount (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Enable PWC timer counting. | |
en_result_t | Bt_Pwc_DisableCount (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Disable PWC timer counting. | |
en_result_t | Bt_Pwc_EnableInt (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_pwc_int_sel_t *pstcIntSel, stc_pwc_int_cb_t *pstcIntCallback) |
Enable PWC timer interrupt. | |
en_result_t | Bt_Pwc_DisableInt (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_pwc_int_sel_t *pstcIntSel) |
Disable PWC timer interrupt. | |
en_int_flag_t | Bt_Pwc_GetIntFlag (volatile FM0P_BT_PWM_TypeDef *pstcBt, en_bt_pwc_int_t enIntType) |
Get interrupt flag of PWC timer. | |
en_result_t | Bt_Pwc_ClrIntFlag (volatile FM0P_BT_PWM_TypeDef *pstcBt, en_bt_pwc_int_t enIntType) |
Clear interrupt flag of PWC timer. | |
en_stat_flag_t | Bt_Pwc_GetErrorFlag (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Get error flag of PWC timer. | |
uint16_t | Bt_Pwc_Get16BitMeasureData (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Get 16 bits measure data of PWC timer. | |
uint32_t | Bt_Pwc_Get32BitMeasureData (volatile FM0P_BT_PWM_TypeDef *pstcBt) |
Get 32 bits measure data of PWC timer. | |
void | Bt_IrqHandler (volatile FM0P_BT_PWM_TypeDef *pstcBt, stc_bt_intern_data_t *pstcBtInternData) |
BT interrupt service routine. | |
void | Bt_SetSimultaneousStart (uint16_t u16Value) |
Set the Simultaneous Start register of Base timer. | |
Variables | |
stc_bt_instance_data_t | m_astcBtInstanceDataLut [((PDL_PERIPHERAL_ENABLE_BT0==PDL_ON)?1:0)+((PDL_PERIPHERAL_ENABLE_BT1==PDL_ON)?1:0)+((PDL_PERIPHERAL_ENABLE_BT2==PDL_ON)?1:0)+((PDL_PERIPHERAL_ENABLE_BT3==PDL_ON)?1:0)+((PDL_PERIPHERAL_ENABLE_BT4==PDL_ON)?1:0)+((PDL_PERIPHERAL_ENABLE_BT5==PDL_ON)?1:0)+((PDL_PERIPHERAL_ENABLE_BT6==PDL_ON)?1:0)+((PDL_PERIPHERAL_ENABLE_BT7==PDL_ON)?1:0)] |
Look-up table for all enabled BT instances and their internal data. |
Headerfile for BT functions
History:
Definition in file bt.h.