49 lines
1.3 KiB
C
49 lines
1.3 KiB
C
|
/*
|
||
|
* @Description:
|
||
|
* @Version: 1.0
|
||
|
* @Autor: lzc
|
||
|
* @Date: 2022-11-02 08:47:08
|
||
|
* @LastEditors: lzc
|
||
|
* @LastEditTime: 2023-07-07 10:14:53
|
||
|
*/
|
||
|
#ifndef _TIMER_H
|
||
|
#define _TIMER_H
|
||
|
#include "sys.h"
|
||
|
|
||
|
#define SysTick_CLK_10ms 1680000
|
||
|
#define SysTick_IRQ_ENABLE() \
|
||
|
SysTick->CTRL |= SysTick_CTRL_ENABLE_Msk; \
|
||
|
SysTick->CTRL |= SysTick_CTRL_TICKINT_Msk
|
||
|
|
||
|
#define SysTick_IRQ_DISABLE() \
|
||
|
SysTick->CTRL &= ~SysTick_CTRL_ENABLE_Msk; \
|
||
|
SysTick->CTRL &= ~SysTick_CTRL_TICKINT_Msk
|
||
|
|
||
|
typedef struct
|
||
|
{
|
||
|
uint32_t CountNum; /* 设置滴答定时器计时次数 (用于定时器增加计数)*/
|
||
|
uint32_t OverTimeVal; /* 超时值(超过这个值则表示达到预期定时值)*/
|
||
|
} TimingVarTypeDef; /* 计时变量类型 */
|
||
|
|
||
|
void key_optical(void);
|
||
|
void TIM3_Callback(void);
|
||
|
void TIM2_Int_Init(u16 arr, u16 psc);
|
||
|
void TIM3_Int_Init(u16 arr, u16 psc);
|
||
|
void TIM4_Int_Init(u16 arr, u16 psc);
|
||
|
void TIM5_Int_Init(u16 arr, u16 psc);
|
||
|
void TIM7_Int_Init(u16 arr, u16 psc);
|
||
|
void RCC_Configuration(char SysClockFrq);
|
||
|
|
||
|
extern TimingVarTypeDef Time;
|
||
|
extern uint32_t TimeupTimes;
|
||
|
|
||
|
extern uint16_t TIM3_CountVal;
|
||
|
|
||
|
extern uint32_t
|
||
|
Get_SysTick_Time(void);
|
||
|
extern void SysTick_Time_Start(void);
|
||
|
extern void SysTick_Time_Stop(void);
|
||
|
extern uint32_t SysTick_Init(void);
|
||
|
extern void Set_SysTick_OverTimeVal(uint32_t Val);
|
||
|
#endif
|