37 lines
843 B
C
37 lines
843 B
C
|
|
//SysTick <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
#ifndef __SYSTICK_H
|
|||
|
|
#define __SYSTICK_H
|
|||
|
|
|
|||
|
|
#include "sys.h"
|
|||
|
|
|
|||
|
|
#define TMR_COUNT 4 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>
|
|||
|
|
|
|||
|
|
//<2F><>ʱ<EFBFBD><CAB1><EFBFBD>ṹ<EFBFBD>幤<EFBFBD><E5B9A4>ģʽ
|
|||
|
|
typedef enum
|
|||
|
|
{
|
|||
|
|
TMR_ONCE_MODE = 0, //һ<>ι<EFBFBD><CEB9><EFBFBD>ģʽ
|
|||
|
|
TMR_AUTO_MODE = 1 //<2F>Զ<EFBFBD><D4B6><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ģʽ
|
|||
|
|
} TMR_MODE_E;
|
|||
|
|
|
|||
|
|
//<2F><>ʱ<EFBFBD><CAB1><EFBFBD>ṹ<EFBFBD><E1B9B9>
|
|||
|
|
typedef struct
|
|||
|
|
{
|
|||
|
|
volatile uint8_t Mode; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
|
|||
|
|
volatile uint8_t Flag; //<2F><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
|
|||
|
|
volatile uint32_t Count; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
volatile uint32_t PreLoad; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥװֵ
|
|||
|
|
} SOFT_TMR;
|
|||
|
|
|
|||
|
|
void SysTick_Init(void);
|
|||
|
|
void Delay_ms(uint32_t n);
|
|||
|
|
void Delay_us(uint32_t n);
|
|||
|
|
void SysTick_StartTimer(uint8_t _id, uint32_t _period);
|
|||
|
|
void SysTick_StartAutoTimer(uint8_t _id, uint32_t _period);
|
|||
|
|
void SysTick_StopTimer(uint8_t _id);
|
|||
|
|
uint8_t SysTick_CheckTimer(uint8_t _id);
|
|||
|
|
int32_t SysTick_GetRunTime(void);
|
|||
|
|
int32_t SysTick_CheckRunTime(int32_t _LastTime);
|
|||
|
|
|
|||
|
|
#endif
|