📄 stream.c
字号:
sprintf(tmpstr,"%5dKM/H",sumint);
break;
case 8 : //38,39 y=x1*64+x2*0.2471 RPM
sumint = (int)TagStr.strread[38]*64+(int)TagStr.strread[39]*0.2471;
sprintf(tmpstr,"%5dRPM",sumint);
break;
case 9 : //40 y=x1*10 RPM
sumint = (int)TagStr.strread[40]*10;
sprintf(tmpstr,"%5dRPM",sumint);
break;
case 10 : //41 y=x1*10 RPM
sumint = (int)TagStr.strread[41]*10;
sprintf(tmpstr,"%5dRPM",sumint);
break;
case 11 : //57 y=5/255*x1 V
Sum = 5/255*(float)TagStr.strread[57];
sprintf(tmpstr,"%7.2fV",Sum);
break;
case 12 : //61 y=x1*100/255 %
Sum = (float)TagStr.strread[61]*100/255;
sprintf(tmpstr,"%5.0f%%",Sum);
break;
case 13 : //62 y=x1*99/255
Sum = (float)TagStr.strread[62]*99/255;
sprintf(tmpstr,"%5.0f",Sum);
break;
case 14 : //48 y=x1-40 ℃
Sum = (float)TagStr.strread[48]-40;
sprintf(tmpstr,"%6.0fC",Sum);
break;
case 15 : //55 0.01996*x1 V
Sum = 0.01996*(float)TagStr.strread[55];
sprintf(tmpstr,"%7.2fV",Sum);
break;
case 16 : //70 y1=x1/10 ms
Sum = (float)TagStr.strread[70]/10;
sprintf(tmpstr,"%5.1fms",Sum);
break;
case 17 : //71 y1=x1/10 ms
Sum = (float)TagStr.strread[71]/10;
sprintf(tmpstr,"%5.1fms",Sum);
break;
case 18 : //72 y1=0.5*x1-64 °
Sum = (float)TagStr.strread[72]*0.5-64;
sprintf(tmpstr,"%5.1f'",Sum);
break;
case 19 : //78,79 y1=x1*5+x2*0.01953 V
Sum = (float)TagStr.strread[78]*5+(float)TagStr.strread[79]*0.01953;
sprintf(tmpstr,"%8.3fV",Sum);
break;
case 20 : //80,81 y1=x1*5+x2*0.01953 V
Sum = (float)TagStr.strread[80]*5+(float)TagStr.strread[81]*0.01953;
sprintf(tmpstr,"%8.3fV",Sum);
break;
case 21 : //90 y1=x1*4.98/255 V
Sum = (float)TagStr.strread[90]*4.98/255;
sprintf(tmpstr,"%5.1fV",Sum);
break;
case 22 : //10 5*x1
Sum = 5*(float)TagStr.strread[10];
sprintf(tmpstr,"%6.0f",Sum);
break;
case 23 : //76 0.549*x1 KPA
Sum = 0.549*(float)TagStr.strread[76];
sprintf(tmpstr,"%6.1fKPA",Sum);
break;
case 24 : //76,77 y1=0.549*x1+0.002*x2 L/H
Sum = (float)TagStr.strread[76]*0.549+(float)TagStr.strread[77]*0.002;
sprintf(tmpstr,"%5.1fL/H",Sum);
break;
case 25 : //56 y=x1 STEP
Sum = (float)TagStr.strread[56];
sprintf(tmpstr,"%5.0fSTEP",Sum);
break;
default: break;
}
}
else if( SysID == HFSMABS ) //哈飞汽车 -> 赛马ABS
{
switch(strnum)
{
case 0 : //已存故障码 68 6A F1 B1 01 75 5 取低7位的值
sprintf(tmpstr,"%4u",TagStr.strread[6]&0x7f);
break;
case 1 : //故障指示灯 68 6A F1 B1 01 75 5 byte[5]==80H 显示:ON;否则:OFF
if( TagStr.strread[6]&0x80 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 2 : //电瓶电压 68 6A F1 B1 0A 7E 5 x1*16/255
Sum = (float)TagStr.strread[6]*16/255;
sprintf(tmpstr,"%4.0f'",Sum);
break;
case 3 : //左前轮速 68 6A F1 B1 0E 82 5 x1
sprintf(tmpstr,"%4u",TagStr.strread[6]);
break;
case 4 : //右前轮速 68 6A F1 B1 0E 82 6 x1
sprintf(tmpstr,"%4u",TagStr.strread[7]);
break;
case 5 : //左后轮速 68 6A F1 B1 0E 82 7 x1
sprintf(tmpstr,"%4u",TagStr.strread[8]);
break;
case 6 : //右后轮速 68 6A F1 B1 0E 82 8 x1
sprintf(tmpstr,"%4u",TagStr.strread[9]);
break;
case 7 : //警告灯 68 6A F1 B1 1E 92 5 byte[5]==01H 显示:ON;否则:OFF
if( TagStr.strread[6]&0x01 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 8 : //制动踏板 68 6A F1 B1 1F 93 6 byte[6]==01H 显示:ON;否则:OFF
if( TagStr.strread[7]&0x01 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 9 : //马达继电器 68 6A F1 B1 22 96 5 byte[5]==01H 显示:ON;否则:OFF
if( TagStr.strread[6]&0x01 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 10 : //电磁阀继电器 68 6A F1 B1 22 96 5 byte[5]==10H 显示:ON;否则:OFF
if( TagStr.strread[6]&0x10 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 11 : //马达 68 6A F1 B1 23 97 5 byte[5]==01H 显示:ON;否则:OFF
if( TagStr.strread[6]&0x01 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 12 : //左前输入电磁阀 68 6A F1 B1 26 9A 5 byte[5]==10H 显示:ON;否则:OFF
if( TagStr.strread[6]&0x10 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 13 : //右前输入电磁阀 68 6A F1 B1 26 9A 5 byte[5]==40H 显示:ON;否则:OFF
if( TagStr.strread[6]&0x40 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 14 : //左后输入电磁阀 68 6A F1 B1 26 9A 6 byte[6]==01H 显示:ON;否则:OFF
if( TagStr.strread[7]&0x01 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 15 : //右后输入电磁阀 68 6A F1 B1 26 9A 6 byte[6]==04H 显示:ON;否则:OFF
if( TagStr.strread[7]&0x04 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 16 : //左前输出电磁阀 68 6A F1 B1 26 9A 8 byte[8]==01H 显示:ON;否则:OFF
if( TagStr.strread[9]&0x01 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 17 : //右前输出电磁阀 68 6A F1 B1 26 9A 8 byte[8]==04H 显示:ON;否则:OFF
if( TagStr.strread[9]&0x04 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 18 : //左后输出电磁阀 68 6A F1 B1 26 9A 8 byte[8]==10H 显示:ON;否则:OFF
if( TagStr.strread[9]&0x10 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
case 19 : //右后输出电磁阀 68 6A F1 B1 26 9A 8 byte[8]==40H 显示:ON;否则:OFF
if( TagStr.strread[9]&0x40 ) sprintf(tmpstr," ON");
else sprintf(tmpstr,"OFF");
break;
default: break;
}
}
//显示数据流项目
SetCursor( 20-strlen(tmpstr),line );
PutStr( (UCHAR*)tmpstr );
}
/*
**---------------------------------------------------------------------------------------
* 数据流帮助信息
**---------------------------------------------------------------------------------------
*/
void StreamHelp(unsigned char strnum)
{
#ifdef DEBUGMODE
DebugString( "StreamHelp()" );
#endif
//在此处添加各系统的数据流帮助文本
unsigned char *HStreamHFDRF[] =
{
"故障码",
"歧管压力",
"电瓶电压",
"进气温度",
"冷却液温度",
"点火提前角",
"空调压力",
"CCESC单元",
"节气门电压",
"节气门开度",
"车速",
"运行目标转速",
"发动机转速",
"喷油脉宽",
"怠速马达位置",
"氧传感器",
"氧传感器修正值",
"自学习单元",
"自学习值",
"氧传感器跳变次数",
"空燃比",
"运行时间",
"前蒸发器温度",
"后蒸发器温度",
"里程计",
"1#缸点火延迟",
"2#缸点火延迟",
"3#缸点火延迟",
"4#缸点火延迟"
};
unsigned char *HStreamHFMT20[] =
{
"故障码",
"歧管压力",
"电瓶电压",
"进气温度",
"冷却液温度",
"点火提前角",
"空调压力",
"CCESC单元",
"节气门电压",
"节气门开度",
"车速",
"运行目标转速",
"发动机转速",
"喷油脉宽",
"怠速马达位置",
"氧传感器",
"氧传感器修正值",
"自学习单元",
"自学习值",
"氧传感器跳变次数",
"空燃比",
"运行时间",
"前蒸发器温度",
"后蒸发器温度",
};
unsigned char *HStreamENGM154[] =
{
"发动机转速",
"冷却液温度",
"点火提前角",
"节气门开度",
"喷油脉宽",
"系统电压",
"进气温度",
"进气压力",
"车速",
"喷油修正",
"碳罐占空比",
"怠速空气控制",
"氧传感器"
};
unsigned char *HStreamHFLBDRF[] =
{
"歧管压力1",
"歧管电力2",
"电瓶电压",
"进气温度AD值",
"进气温度",
"冷却液温度AD值",
"冷却液温度",
"车速",
"发电机转速",
"驻车目标转速",
"运行目标转速",
"节气门电压",
"节气门开度",
"节气门计算值",
"环境温度",
"踏板位置2",
"闭合时间",
"喷油脉宽",
"点火提前角",
"爆震传感器1",
"爆震传感器2",
"氧传感器1",
"发动机相对负载",
"最终长期目标位置",
"油耗量",
"步进电机目标位置"
};
unsigned char *HStreamHFABS[] =
{
"已存故障码数",
"故障指示灯",
"电瓶电压",
"左前轮速",
"右前轮速",
"左后轮速",
"右后轮速",
"警告灯",
"制动踏板",
"马达继电器",
"电磁阀继电器",
"马达",
"左前输入电磁阀",
"右前输入电磁阀",
"左后输入电磁阀",
"右后输入电磁阀",
"左前输出电磁阀",
"右前输出电磁阀",
"左后输出电磁阀",
"右后输出电磁阀"
};
unsigned char Userline = 0;
unsigned char StartL = 0; //当前起始行
ScreenInit( W_TEXT );
strnum -= 1;
if( SysID == HFDRF ) //哈飞汽车 -> 德尔福电控
{
AddString( HStreamHFDRF[strnum] );
}
else if( SysID == HFDRFMT ) //哈飞汽车 -> 民意MT20
{
AddString( HStreamHFMT20[strnum] );
}
else if( SysID == HFM154 ) //哈飞汽车 -> 联电M154
{
AddString( HStreamENGM154[strnum] );
}
else if( SysID == HFLBDRF ) //哈飞汽车 -> 路宝ENG
{
AddString( HStreamHFLBDRF[strnum] );
}
else if( SysID == HFSMABS ) //哈飞汽车 -> 赛马ABS
{
AddString( HStreamHFABS[strnum] );
}
while( ScreenAct( &StartL, &Userline ) != W_RETURN );
}
//----------------------------------------------------------------- End Of File ----------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -