📄 pgn.h
字号:
//参数格式定义
typedef struct _Define_OBJ
{
uchar Type; //0-连续变量 1-离散变量
uchar Length; //长度
float Resolution; //分辨率
float Offset; //偏移量
float Range_low; //数值范围下限
float Range_high; //数值范围上限
ulong SPN; //怀疑参数编号SPN
}Define_OBJ,*PDefine_OBJ;
//参数组格式定义
typedef struct _PGN_OBJ
{
ulong PGN; //参数组标码
uint Update_Rate; //参数组标码
uchar Priority; //优先级
uchar DataLen; //数据长度
uchar ParaAmount; //参数个数
Define_OBJ Define[8]; //各参数具体定义
float VerData[8]; //参数真值
}PGN_OBJ,*PPGN_OBJ;
PGN_OBJ PDU[18];
uchar PDUAmount = 18;
//========================================================================
// Name: PGN定义.
// ----------------------------------------------------------
// Remarks:
//==========================================================================
#pragma CODE_SEG DEFAULT
static void PDUDefine(void)
{
//******************* 混合动力车辆控制器 *******************//
// 1) 混合动力车辆控制器信息参数组(HVINF)
PDU[0].PGN = 64000;
PDU[0].DataLen = 8;
PDU[0].Priority = 3;
PDU[0].Update_Rate = 50;
PDU[0].ParaAmount = 4;
//参数1定义 加速踏板开度
PDU[0].Define[0].Type = 0;
PDU[0].Define[0].Length = 1;
PDU[0].Define[0].Resolution = 0.004;
PDU[0].Define[0].Offset = 0;
PDU[0].Define[0].Range_low = 0;
PDU[0].Define[0].Range_high = 1;
PDU[0].Define[0].SPN = 0;
PDU[0].VerData[0] = 0;
//参数2定义 制动踏板开度
PDU[0].Define[1].Type = 0;
PDU[0].Define[1].Length = 1;
PDU[0].Define[1].Resolution = 0.004;
PDU[0].Define[1].Offset = 0;
PDU[0].Define[1].Range_low = 0;
PDU[0].Define[1].Range_high = 1;
PDU[0].Define[1].SPN = 0;
PDU[0].VerData[1] = 0;
//参数3定义 车速
PDU[0].Define[2].Type = 0;
PDU[0].Define[2].Length = 2;
PDU[0].Define[2].Resolution = 0.0078125;
PDU[0].Define[2].Offset = -250;
PDU[0].Define[2].Range_low = -250;
PDU[0].Define[2].Range_high = 251.992;
PDU[0].Define[2].SPN = 0;
PDU[0].VerData[2] = 0;
//参数4定义 主控制器收到的动力电池组SOC(测试用)
PDU[0].Define[3].Type = 0;
PDU[0].Define[3].Length = 2;
PDU[0].Define[3].Resolution = 0.001;
PDU[0].Define[3].Offset = 0;
PDU[0].Define[3].Range_low = 0;
PDU[0].Define[3].Range_high = 1;
PDU[0].Define[3].SPN = 0;
PDU[0].VerData[3] = 0;
//参数4定义 收到的
/* PDU[0].Define[4].Type = 0;
PDU[0].Define[4].Length = 2;
PDU[0].Define[4].Resolution = 1;
PDU[0].Define[4].Offset = 0;
PDU[0].Define[4].Range_low = 0;
PDU[0].Define[4].Range_high = 0;
PDU[0].Define[4].SPN = 0;
PDU[0].VerData[4] = 0;*/
// 2) 发动机控制参数组(HVEC)
PDU[1].PGN = 64001;
PDU[1].DataLen = 8;
PDU[1].Priority = 3;
PDU[1].Update_Rate = 50;
PDU[1].ParaAmount = 4;
//参数1定义 未定义(8,7) + 发动机工作模式指令(6-3) + 发动机开关指令(2,1)
PDU[1].Define[0].Type = 0;
PDU[1].Define[0].Length = 1;
PDU[1].Define[0].Resolution = 1;
PDU[1].Define[0].Offset = 0;
PDU[1].Define[0].Range_low = 0;
PDU[1].Define[0].Range_high = 255;
PDU[1].Define[0].SPN = 0;
PDU[1].VerData[0] = 0;
//参数2定义 发动机目标转矩
PDU[1].Define[1].Type = 0;
PDU[1].Define[1].Length = 2;
PDU[1].Define[1].Resolution = 1;
PDU[1].Define[1].Offset = -32000;
PDU[1].Define[1].Range_low = -32000;
PDU[1].Define[1].Range_high = 32255;
PDU[1].Define[1].SPN = 0;
PDU[1].VerData[1] = 0;
//参数3定义 发动机目标转速
PDU[1].Define[2].Type = 0;
PDU[1].Define[2].Length = 2;
PDU[1].Define[2].Resolution = 0.5;
PDU[1].Define[2].Offset = 0;
PDU[1].Define[2].Range_low = 0;
PDU[1].Define[2].Range_high = 32127.5;
PDU[1].Define[2].SPN = 0;
PDU[1].VerData[2] = 0;
//参数4定义 **未定义**
PDU[1].Define[3].Type = 0;
PDU[1].Define[3].Length = 3;
PDU[1].Define[3].Resolution = 1;
PDU[1].Define[3].Offset = 0;
PDU[1].Define[3].Range_low = 0;
PDU[1].Define[3].Range_high = 0;
PDU[1].Define[3].SPN = 0;
PDU[1].VerData[3] = 0;
// 3) 启动发电一体机控制参数组(HVISGC)
PDU[2].PGN = 64002;
PDU[2].DataLen = 8;
PDU[2].Priority = 3;
PDU[2].Update_Rate = 50;
PDU[2].ParaAmount = 5;
//参数1定义 未定义(8,7) + 启动发电一体机工作模式指令(6-3) + 启动发电一体机开关指令(2,1)
PDU[2].Define[0].Type = 0;
PDU[2].Define[0].Length = 1;
PDU[2].Define[0].Resolution = 1;
PDU[2].Define[0].Offset = 0;
PDU[2].Define[0].Range_low = 0;
PDU[2].Define[0].Range_high = 255;
PDU[2].Define[0].SPN = 0;
PDU[2].VerData[0] = 0;
//参数2定义 **未定义**
PDU[2].Define[1].Type = 0;
PDU[2].Define[1].Length = 1;
PDU[2].Define[1].Resolution = 1;
PDU[2].Define[1].Offset = 0;
PDU[2].Define[1].Range_low = 0;
PDU[2].Define[1].Range_high = 255;
PDU[2].Define[1].SPN = 0;
PDU[2].VerData[1] = 0;
//参数3定义 启动发电一体机目标转矩
PDU[2].Define[2].Type = 0;
PDU[2].Define[2].Length = 2;
PDU[2].Define[2].Resolution = 1;
PDU[2].Define[2].Offset = -32000;
PDU[2].Define[2].Range_low = -32000;
PDU[2].Define[2].Range_high = 32255;
PDU[2].Define[2].SPN = 0;
PDU[2].VerData[2] = 0;
//参数4定义 启动发电一体机目标转速
PDU[2].Define[3].Type = 0;
PDU[2].Define[3].Length = 2;
PDU[2].Define[3].Resolution = 0.5;
PDU[2].Define[3].Offset = 0;
PDU[2].Define[3].Range_low = 0;
PDU[2].Define[3].Range_high = 32127.5;
PDU[2].Define[3].SPN = 0;
PDU[2].VerData[3] = 0;
//参数5定义 **未定义**
PDU[2].Define[4].Type = 0;
PDU[2].Define[4].Length = 2;
PDU[2].Define[4].Resolution = 1;
PDU[2].Define[4].Offset = 0;
PDU[2].Define[4].Range_low = 0;
PDU[2].Define[4].Range_high = 0;
PDU[2].Define[4].SPN = 0;
PDU[2].VerData[4] = 0;
// 4) 自动离合器控制参数组(HVACC)
PDU[3].PGN = 64003;
PDU[3].DataLen = 8;
PDU[3].Priority = 3;
PDU[3].Update_Rate = 50;
PDU[3].ParaAmount = 2;
//参数1定义 自动离合器目标结合度
PDU[3].Define[0].Type = 0;
PDU[3].Define[0].Length = 1;
PDU[3].Define[0].Resolution = 1;//0.004;
PDU[3].Define[0].Offset = 0;
PDU[3].Define[0].Range_low = 0;
PDU[3].Define[0].Range_high = 1;
PDU[3].Define[0].SPN = 0;
PDU[3].VerData[0] = 0;
//参数2定义 **未定义**
PDU[3].Define[1].Type = 0;
PDU[3].Define[1].Length = 7;
PDU[3].Define[1].Resolution = 1;
PDU[3].Define[1].Offset = 0;
PDU[3].Define[1].Range_low = 0;
PDU[3].Define[1].Range_high = 0;
PDU[3].Define[1].SPN = 0;
PDU[3].VerData[1] = 0;
// 5) 混合动力车辆控制器故障参数组(HVERR)
PDU[4].PGN = 64004;
PDU[4].DataLen = 8;
PDU[4].Priority = 5;
PDU[4].Update_Rate = 50;
PDU[4].ParaAmount = 5;
//参数1定义 故障4-1
PDU[4].Define[0].Type = 0;
PDU[4].Define[0].Length = 1;
PDU[4].Define[0].Resolution = 1;
PDU[4].Define[0].Offset = 0;
PDU[4].Define[0].Range_low = 0;
PDU[4].Define[0].Range_high = 255;
PDU[4].Define[0].SPN = 0;
PDU[4].VerData[0] = 0;
//参数2定义 故障8-5
PDU[4].Define[1].Type = 0;
PDU[4].Define[1].Length = 1;
PDU[4].Define[1].Resolution = 1;
PDU[4].Define[1].Offset = 0;
PDU[4].Define[1].Range_low = 0;
PDU[4].Define[1].Range_high = 255;
PDU[4].Define[1].SPN = 0;
PDU[4].VerData[1] = 0;
//参数3定义 故障12-9
PDU[4].Define[2].Type = 0;
PDU[4].Define[2].Length = 1;
PDU[4].Define[2].Resolution = 1;
PDU[4].Define[2].Offset = 0;
PDU[4].Define[2].Range_low = 0;
PDU[4].Define[2].Range_high = 255;
PDU[4].Define[2].SPN = 0;
PDU[4].VerData[2] = 0;
//参数4定义 故障16-13
PDU[4].Define[3].Type = 0;
PDU[4].Define[3].Length = 1;
PDU[4].Define[3].Resolution = 1;
PDU[4].Define[3].Offset = 0;
PDU[4].Define[3].Range_low = 0;
PDU[4].Define[3].Range_high = 255;
PDU[4].Define[3].SPN = 0;
PDU[4].VerData[3] = 0;
//参数5定义 **未定义**
PDU[4].Define[4].Type = 0;
PDU[4].Define[4].Length = 4;
PDU[4].Define[4].Resolution = 1;
PDU[4].Define[4].Offset = 0;
PDU[4].Define[4].Range_low = 0;
PDU[4].Define[4].Range_high = 0;
PDU[4].Define[4].SPN = 0;
PDU[4].VerData[4] = 0;
//******************* 发动机辅助控制器(EAC-ECU) *******************//
// 1) 发动机辅助控制器信息参数组1(EACINF1)
PDU[5].PGN = 64020;
PDU[5].DataLen = 8;
PDU[5].Priority = 3;
PDU[5].Update_Rate = 50;
PDU[5].ParaAmount = 5;
//参数1定义 发动机实际转速
PDU[5].Define[0].Type = 0;
PDU[5].Define[0].Length = 2;
PDU[5].Define[0].Resolution = 0.5;
PDU[5].Define[0].Offset = 0;
PDU[5].Define[0].Range_low = 0;
PDU[5].Define[0].Range_high = 32127.5;
PDU[5].Define[0].SPN = 0;
PDU[5].VerData[0] = 0;
//参数2定义 发动机实际扭矩
PDU[5].Define[1].Type = 0;
PDU[5].Define[1].Length = 2;
PDU[5].Define[1].Resolution = 1;
PDU[5].Define[1].Offset = -32000;
PDU[5].Define[1].Range_low = -32000;
PDU[5].Define[1].Range_high = 32255;
PDU[5].Define[1].SPN = 0;
PDU[5].VerData[1] = 0;
//参数3定义 发动机瞬时燃油消耗率估计值
PDU[5].Define[2].Type = 0;
PDU[5].Define[2].Length = 2;
PDU[5].Define[2].Resolution = 0.001;
PDU[5].Define[2].Offset = 0;
PDU[5].Define[2].Range_low = 0;
PDU[5].Define[2].Range_high = 64.255;
PDU[5].Define[2].SPN = 0;
PDU[5].VerData[2] = 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -