chargeController/APP/functionalModule/Src/checkTime.c

63 lines
1.1 KiB
C
Raw Normal View History

#include "checkTime.h"
typedef struct _timeData {
/* 程序执行前的时间 */
uint32_t time_ms1;
uint16_t time_tick1;
/* 程序执行完的时间 */
uint32_t time_ms2;
uint16_t time_tick2;
/* 程序执行所用的时间ms */
float time_s;
}timeData;
static timeData checkTimeData;
volatile static uint32_t hw_sys_tick_ms = 0; //ms 自增计数变量
float checkAbnormalTime;
#define tim TIM15
#define timLard 36000.0
/**
* hw_inc_tick函数
*
* hw_sys_tick_ms
* hw_sys_tick_ms将增加1
*
*
*/
void hw_inc_tick(void)
{
++hw_sys_tick_ms;
}
void checkTimeInit(void)
{
checkTimeData.time_ms1 = hw_sys_tick_ms;
checkTimeData.time_tick1 = tim->CNT;
}
float getCheckTime(void)
{
checkTimeData.time_ms2 = hw_sys_tick_ms;
checkTimeData.time_tick2 = tim->CNT;
checkTimeData.time_s = checkTimeData.time_ms2 - checkTimeData.time_ms1
+ (checkTimeData.time_tick2 - checkTimeData.time_tick1) / timLard;
return checkTimeData.time_s;
}