Job_SignsPads/STM32/Code/STM32F405/Application/timer.h

49 lines
1.3 KiB
C
Raw Normal View History

2025-04-22 02:29:37 +00:00
/*
* @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