📄 tim_a.h
字号:
(TIM_A_PARAM_CHECKING) ? \
( \
((TIMPtr) == NULL) ? \
TIM_A_ERR_INVALID_HANDLE : \
(((PIE) < TIM_A_INTERRUPT_FLAG_NOT_ALLOWED) || \
((PIE) > TIM_A_INTERRUPT_FLAG_ALLOWED)) ? \
TIM_A_ERR_INVALID_TIM_INTERRUPT_ENABLE: \
TIM_A_ControlInterrupt_f((TIMPtr), \
(PIE) \
) \
) \
: \
TIM_A_ControlInterrupt_f((TIMPtr), \
(PIE) \
) \
) /* End of ControlInterrupt Macro */
/**********************************************************************/
/* Function: TIM_A_GetStatus_f */
/* */
/* Purpose: Return the status bit of the TIM */
/* */
/* Input: */
/* TIMPtr : TIM register block base address */
/* GetStatusPtr : Result address for selected TIM_A register data */
/* */
/* Output: */
/* TIM_A_ERR_NONE : For successful */
/* completion */
/* TIM_A_ERR_INVALID_HANDLE : Device Handle is NULL. */
/* TIM_A_ERR_INVALID_TIM_INTERRUPT_ENABLE : TIM interrupt enable */
/* is invalid. */
/**********************************************************************/
#define TIM_A_GetStatus(TIMPtr, \
GetStatusPtr \
) \
( \
(TIM_A_PARAM_CHECKING) ? \
( \
((TIMPtr) == NULL) ? \
TIM_A_ERR_INVALID_HANDLE : \
((GetStatusPtr) == NULL) ? \
TIM_A_ERR_BAD_RESULT_ADDR : \
TIM_A_GetStatus_f( (TIMPtr), \
(GetStatusPtr) \
) \
) \
: \
TIM_A_GetStatus_f( (TIMPtr), \
(GetStatusPtr) \
) \
) /* End of TIM_A_GetStatus Macro */
/**********************************************************************/
/* Macro: TIM_A_ControlOperation_f */
/* */
/* Purpose: Shall enable or disable the TIM */
/* */
/* Input: */
/* TIMPtr : TIM register block base address */
/* TIMEnable : Enable or disable the TIM */
/* */
/* Output: */
/* TIM_A_ERR_NONE : For successful completion */
/* TIM_A_ERR_INVALID_HANDLE : TIM base address parameter is zero */
/* TIM_A_ERR_INVALID_TIM_ENABLE : TIM enable is invalid. */
/**********************************************************************/
#define TIM_A_ControlOperation( TIMPtr, \
TIMEnable \
) \
( \
(TIM_A_PARAM_CHECKING) ? \
( \
((TIMPtr) == NULL) ? \
TIM_A_ERR_INVALID_HANDLE : \
(((TIMEnable) < TIM_A_FUNCTION_DISABLE) || \
((TIMEnable) > TIM_A_FUNCTION_ENABLE)) ? \
TIM_A_ERR_INVALID_TIM_ENABLE: \
TIM_A_ControlOperation_f((TIMPtr), \
(TIMEnable) \
) \
) \
: \
TIM_A_ControlOperation_f((TIMPtr), \
(TIMEnable) \
) \
) /* End of TIM_A_ControlOperation Macro */
/**********************************************************************/
/* Macro: TIM_A_SetRegister */
/* */
/* Purpose: Write a 16-bit data value to a sub-set of TIM */
/* registers. Parameter checking is a compile-time */
/* option. */
/* */
/* Input: */
/* TIMPtr : TIM_A base address associated with this driver. */
/* RegisterSelect : Select among TIM_A registers. */
/* RegisterValue : Data to copy into the user specified register. */
/* */
/* Output: */
/* TIM_A_ERR_NONE : No error */
/* TIM_A_ERR_INVALID_HANDLE : TIM base address parameter is zero */
/* TIM_A_ERR_INVALID_REGISTER : TIM Register Selection switch */
/* is invalid */
/**********************************************************************/
#define TIM_A_SetRegister(TIMPtr, \
RegisterSelect, \
RegisterValue \
) \
( \
(TIM_A_PARAM_CHECKING) ? \
( \
((TIMPtr) == NULL) ? \
TIM_A_ERR_INVALID_HANDLE : \
(((RegisterSelect) < TIM_A_PCSR) || \
((RegisterSelect) > TIM_A_PMR)) ? \
TIM_A_ERR_INVALID_REGISTER : \
TIM_A_SetRegister_f((TIMPtr), \
(RegisterSelect), \
(RegisterValue) \
) \
) \
: \
TIM_A_SetRegister_f((TIMPtr), \
(RegisterSelect), \
(RegisterValue) \
) \
\
) /* End of TIM_A_SetRegister Macro */
/**********************************************************************/
/* Macro: TIM_A_GetRegister */
/* */
/* Purpose: Return the contents of a sub-set of TIM registers. */
/* Parameter checking is a compile-time option. */
/* Input: */
/* TIMPtr : TIM_A base address associated with this driver. */
/* RegisterSelect : Select among a sub-set of TIM_A registers. */
/* GetRegisterPtr : Result address for selected TIM_A register. */
/* */
/* Output: */
/* TIM_A_ERR_NONE : No error */
/* TIM_A_ERR_INVALID_HANDLE : TIM base address parameter is zero */
/* TIM_A_ERR_BAD_RESULT_ADDR : Result Pointer is zero */
/* TIM_A_ERR_INVALID_REGISTER : TIM Register Selection switch is */
/* invalid */
/**********************************************************************/
#define TIM_A_GetRegister(TIMPtr, \
RegisterSelect, \
GetRegisterPtr \
) \
( \
(TIM_A_PARAM_CHECKING) ? \
( \
((TIMPtr) == NULL) ? \
TIM_A_ERR_INVALID_HANDLE : \
((GetRegisterPtr) == NULL) ? \
TIM_A_ERR_BAD_RESULT_ADDR : \
(((RegisterSelect) < TIM_A_PCSR) || \
((RegisterSelect) > TIM_A_PCNTR)) ? \
TIM_A_ERR_INVALID_REGISTER : \
TIM_A_GetRegister_f( (TIMPtr), \
(RegisterSelect), \
(GetRegisterPtr) \
) \
) \
: \
TIM_A_GetRegister_f( (TIMPtr), \
(RegisterSelect), \
(GetRegisterPtr) \
) \
) /* End of TIM_A_GetRegister Macro */
/**********************************************************************/
/* Macro: TIM_A_Reset */
/* */
/* Purpose: Resets the programmable interval timer. */
/* Parameter checking is a compile-time option. */
/* */
/* Input: */
/* TIMPtr : TIM_A base address associated with this driver. */
/* */
/* Output: */
/* TIM_A_ERR_NONE : No error */
/* TIM_A_ERR_INVALID_HANDLE : TIM base address parameter is zero */
/**********************************************************************/
#define TIM_A_Reset( TIMPtr \
) \
( \
(TIM_A_PARAM_CHECKING) ? \
( \
((TIMPtr) == NULL) ? \
TIM_A_ERR_INVALID_HANDLE : \
TIM_A_Reset_f ( (TIMPtr) \
) \
) \
: \
TIM_A_Reset_f ( (TIMPtr) \
) \
) /* end of TIM_A_Reset Macro */
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -