mirror of
https://gitee.com/Polarix/simplegui.git
synced 2025-06-18 05:57:53 +00:00

将tab键替换为空格 删除每行末尾无用的空格 # Conflicts: # DemoProc/src/DemoProc.c # GUI/inc/SGUI_Basic.h # GUI/inc/SGUI_Typedef.h # GUI/src/SGUI_Basic.c # GUI/src/SGUI_Curve.c # GUI/src/SGUI_Text.c
61 lines
2.8 KiB
C
61 lines
2.8 KiB
C
#include "base_timer.h"
|
|
|
|
#define TIMER_REV_INT_CBPF_DEFINE(TIMER, INIT) static TIMER_INT_FP TIMER##_INIT_CALLBACK = (INIT)
|
|
|
|
#define TIMER_REV_INT_CFG_DEFINE(TIMER) void TIMER##_ConfigReceiveInterrupt(TIMER_INT_FP pfCallBack, int iPreemptionPriority, int SubPriority)\
|
|
{\
|
|
NVIC_InitTypeDef NVIC_InitStructure;\
|
|
NVIC_InitStructure.NVIC_IRQChannel = TIMER##_IRQn;\
|
|
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=iPreemptionPriority;\
|
|
NVIC_InitStructure.NVIC_IRQChannelSubPriority = SubPriority;\
|
|
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;\
|
|
NVIC_Init(&NVIC_InitStructure);\
|
|
TIMER##_INIT_CALLBACK = pfCallBack;\
|
|
}
|
|
|
|
#define TIMER_REV_INT_SRV_DEFINE(TIMER) void TIMER##_IRQHandler(void)\
|
|
{\
|
|
if (TIM_GetITStatus(TIMER, TIM_IT_Update) != RESET)\
|
|
{\
|
|
TIM_ClearITPendingBit(TIMER, TIM_IT_Update);\
|
|
if(NULL != TIMER##_INIT_CALLBACK)\
|
|
{\
|
|
TIMER##_INIT_CALLBACK();\
|
|
}\
|
|
}\
|
|
}
|
|
|
|
|
|
TIMER_REV_INT_CBPF_DEFINE(TIM3, NULL);
|
|
TIMER_REV_INT_CFG_DEFINE(TIM3);
|
|
TIMER_REV_INT_SRV_DEFINE(TIM3);
|
|
|
|
TIMER_REV_INT_CBPF_DEFINE(TIM4, NULL);
|
|
TIMER_REV_INT_CFG_DEFINE(TIM4);
|
|
TIMER_REV_INT_SRV_DEFINE(TIM4);
|
|
|
|
void BASE_TIMER_Initialize(TIM_TypeDef* pstTimerBase, uint16_t uiReloadValue, uint16_t uiPrescaler)
|
|
{
|
|
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
|
|
/* Configure timer data. */
|
|
TIM_TimeBaseStructure.TIM_Period = uiReloadValue;
|
|
TIM_TimeBaseStructure.TIM_Prescaler = uiPrescaler;
|
|
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
|
|
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
|
|
TIM_TimeBaseInit(pstTimerBase, &TIM_TimeBaseStructure);
|
|
}
|
|
|
|
void BASE_TIMER_ActiveInterrupt(TIM_TypeDef* pstTimerBase, bool bEnable)
|
|
{
|
|
TIM_Cmd(pstTimerBase, DISABLE);
|
|
if(true == bEnable)
|
|
{
|
|
TIM_ITConfig(pstTimerBase,TIM_IT_Update, ENABLE);
|
|
}
|
|
else
|
|
{
|
|
TIM_ITConfig(pstTimerBase,TIM_IT_Update, DISABLE);
|
|
}
|
|
TIM_Cmd(pstTimerBase, ENABLE);
|
|
}
|