Data_ESpeed.h 2.23 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13
#ifndef _Data_Espeed_H_
#define _Data_Espeed_H_

#include "common.h"

/******************************************************************************
发动机转速
******************************************************************************/

/*** 参数设置 ***/
#define   DATA_ENGINE_RUNNING_THRESHOLD     400  //发动机运转阈值    
#define   DATA_ENGINE_STOP_THRESHOLD        300  //发动机停止阈值

14
#define   DATA_ESPEED_DAMPING_FACTOR        1    //阻尼系数
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
#define   DATA_ESPEED_INC_STEP              10   //速度增加时慢加速速度变化步长
#define   DATA_ESPEED_DEC_STEP              20   //方向改变时急减速速度变化步长
#define   DATA_ESPEED_APPR_SPEED_MIN        10   //最小逼近速度
#define   DATA_ESPEED_HYSTERESIS            80   //回差    

/*** 控制结构 ***/
typedef struct
{
    uint16_t  Buffer[5];
    uint8_t   Cnt;
} DataESpeedSamplerStruct;            //转速采样结构

typedef struct
{
    uint16_t  Speed;
    uint16_t  Delta;
    uint8_t   Dir;
} DataESPeedDampingStruct;            //转速阻尼结构

typedef struct
{
    uint16_t  ESpeedBackup;
    uint16_t  Timer;
    uint8_t   Mode;
} DataESpeedIdleStruct;               //怠速处理结构

/******************************************************************************
函数名:Data_Engine_Speed_KL30_Wakeup_Init
功  能:发动机转速初始化函数
参  数:无
返回值:无
******************************************************************************
注  意:该函数KL30初始化/Wakeup初始化被调用一次
******************************************************************************/
void Data_Engine_Speed_KL30_Wakeup_Init (void);

/******************************************************************************
函数名:Data_Engine_Speed_Processing_Service
功  能:发动机转速数据处理函数
参  数:无
返回值:无
******************************************************************************
注  意:该函数必须每20ms被调用一次
******************************************************************************/
void Data_Engine_Speed_Processing_Service ( void );

uint8_t Get_EngineValid(void);

uint16_t Get_ActualEngineSpeed(void);

uint16_t Get_DispEngineSpeed(void);

#endif