📄 netsend.h
字号:
TI = 1;
}
break;
default://非法功能码
errorreturn();
RS485 = 0;
TI = 1;
break;
}
}
}
}
}
void converdata() reentrant
{
union {unsigned int resultdata;
struct {unsigned char hi;unsigned char lo;}half;
}curresult;
netoutcurdat[0] = machinebase;
netoutcurdat[1] = 2;
//数据长度
netoutcurdat[2] = 9;
curresult.resultdata = (unsigned int)(result[1]*10);//当前电压*10
netoutcurdat[3] = curresult.half.hi;
netoutcurdat[4] = curresult.half.lo;
curresult.resultdata = (unsigned int)(result[0]*100);//当前电流*100
netoutcurdat[5] = curresult.half.hi;
netoutcurdat[6] = curresult.half.lo;
curresult.resultdata = (unsigned int)(result[3]*1000);//当前气压*1000
netoutcurdat[7] = curresult.half.hi;
netoutcurdat[8] = curresult.half.lo;
curresult.resultdata = (unsigned int)(result[2]*100);//当前电阻*100mR
netoutcurdat[9] = curresult.half.hi;
netoutcurdat[10] = curresult.half.lo;
netoutcurdat[11] = lastselect; //检测类型
//计算CRC
netoutcurdat[12] = GetMyCRC(netoutcurdat,12);
}
unsigned char copytosend() reentrant
{
union {unsigned int resultdata;
struct {unsigned char hi;unsigned char lo;}half;
}curresult;
enoutresult = 1;
if(netoutcursta[5] & 0x02)//有检测结果
return(0);
netoutresult[0] = machinebase;
netoutresult[1] = 3;
//数据长度
netoutresult[2] = 97;
//试件编号
netoutresult[3] = testname[0];
netoutresult[4] = testname[1];
netoutresult[5] = testname[2];
netoutresult[6] = testname[3];
netoutresult[7] = testname[4];
netoutresult[8] = testname[5];
netoutresult[9] = testname[6];
netoutresult[10] = testname[7];
//操作者号
switch(curmanno)
{
case 1:
netoutresult[11] = manname1[0];
netoutresult[12] = manname1[1];
netoutresult[13] = manname1[2];
netoutresult[14] = manname1[3];
netoutresult[15] = manname1[4];
netoutresult[16] = manname1[5];
netoutresult[17] = manname1[6];
netoutresult[18] = manname1[7];
break;
case 2:
netoutresult[11] = manname2[0];
netoutresult[12] = manname2[1];
netoutresult[13] = manname2[2];
netoutresult[14] = manname2[3];
netoutresult[15] = manname2[4];
netoutresult[16] = manname2[5];
netoutresult[17] = manname2[6];
netoutresult[18] = manname2[7];
break;
default:
netoutresult[11] = ' ';
netoutresult[12] = ' ';
netoutresult[13] = ' ';
netoutresult[14] = ' ';
netoutresult[15] = ' ';
netoutresult[16] = ' ';
netoutresult[17] = ' ';
netoutresult[18] = ' ';
break;
}
//检测时间
readtimer(disstr,1);
netoutresult[19] = disstr[0];
netoutresult[20] = disstr[1];
netoutresult[21] = disstr[2];
netoutresult[22] = disstr[3];
netoutresult[23] = disstr[4];
netoutresult[24] = disstr[5];
netoutresult[25] = disstr[6];
netoutresult[26] = disstr[7];
//检测结果
//8点电阻
curresult.resultdata = (unsigned int)(outpointr[0]>0?outpointr[0]*100:0);//触点电阻1(常开)*100
netoutresult[27] = curresult.half.hi;
netoutresult[28] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[4]>0?outpointr[4]*100:0);//触点电阻1(常闭)*100
netoutresult[29] = curresult.half.hi;
netoutresult[30] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[1]>0?outpointr[1]*100:0);//触点电阻2(常开)*100
netoutresult[31] = curresult.half.hi;
netoutresult[32] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[5]>0?outpointr[5]*100:0);//触点电阻2(常闭)*100
netoutresult[33] = curresult.half.hi;
netoutresult[34] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[2]>0?outpointr[2]*100:0);//触点电阻3(常开)*100
netoutresult[35] = curresult.half.hi;
netoutresult[36] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[6]>0?outpointr[6]*100:0);//触点电阻3(常闭)*100
netoutresult[37] = curresult.half.hi;
netoutresult[38] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[3]>0?outpointr[3]*100:0);//触点电阻4(常开)*100
netoutresult[39] = curresult.half.hi;
netoutresult[40] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[7]>0?outpointr[7]*100:0);//触点电阻4(常闭)*100
netoutresult[41] = curresult.half.hi;
netoutresult[42] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[8]>0?outpointr[8]*100:0);//触点电阻5(常开)*100
netoutresult[43] = curresult.half.hi;
netoutresult[44] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[12]>0?outpointr[12]*100:0);//触点电阻5(常闭)*100
netoutresult[45] = curresult.half.hi;
netoutresult[46] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[9]>0?outpointr[9]*100:0);//触点电阻6(常开)*100
netoutresult[47] = curresult.half.hi;
netoutresult[48] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[13]>0?outpointr[13]*100:0);//触点电阻6(常闭)*100
netoutresult[49] = curresult.half.hi;
netoutresult[50] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[10]>0?outpointr[10]*100:0);//触点电阻7(常开)*100
netoutresult[51] = curresult.half.hi;
netoutresult[52] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[14]>0?outpointr[14]*100:0);//触点电阻7(常闭)*100
netoutresult[53] = curresult.half.hi;
netoutresult[54] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[11]>0?outpointr[11]*100:0);//触点电阻8(常开)*100
netoutresult[55] = curresult.half.hi;
netoutresult[56] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointr[15]>0?outpointr[15]*100:0);//触点电阻8(常闭)*100
netoutresult[57] = curresult.half.hi;
netoutresult[58] = curresult.half.lo;
//8点延时
curresult.resultdata = (unsigned int)(outpointt[0]>0?outpointt[0]*10000:0);//触点延时1(常开)*10000
netoutresult[59] = curresult.half.hi;
netoutresult[60] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[4]>0?outpointt[4]*10000:0);//触点延时1(常闭)*10000
netoutresult[61] = curresult.half.hi;
netoutresult[62] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[1]>0?outpointt[1]*10000:0);//触点延时2(常开)*10000
netoutresult[63] = curresult.half.hi;
netoutresult[64] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[5]>0?outpointt[5]*10000:0);//触点延时2(常闭)*10000
netoutresult[65] = curresult.half.hi;
netoutresult[66] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[2]>0?outpointt[2]*10000:0);//触点延时3(常开)*10000
netoutresult[67] = curresult.half.hi;
netoutresult[68] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[6]>0?outpointt[6]*10000:0);//触点延时3(常闭)*10000
netoutresult[69] = curresult.half.hi;
netoutresult[70] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[3]>0?outpointt[3]*10000:0);//触点延时4(常开)*10000
netoutresult[71] = curresult.half.hi;
netoutresult[72] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[7]>0?outpointt[7]*10000:0);//触点延时4(常闭)*10000
netoutresult[73] = curresult.half.hi;
netoutresult[74] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[8]>0?outpointt[8]*10000:0);//触点延时5(常开)*10000
netoutresult[75] = curresult.half.hi;
netoutresult[76] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[12]>0?outpointt[12]*10000:0);//触点延时5(常闭)*10000
netoutresult[77] = curresult.half.hi;
netoutresult[78] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[9]>0?outpointt[9]*10000:0);//触点延时6(常开)*10000
netoutresult[79] = curresult.half.hi;
netoutresult[80] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[13]>0?outpointt[13]*10000:0);//触点延时6(常闭)*10000
netoutresult[81] = curresult.half.hi;
netoutresult[82] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[10]>0?outpointt[10]*10000:0);//触点延时7(常开)*10000
netoutresult[83] = curresult.half.hi;
netoutresult[84] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[14]>0?outpointt[14]*10000:0);//触点延时7(常闭)*10000
netoutresult[85] = curresult.half.hi;
netoutresult[86] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[11]>0?outpointt[11]*10000:0);//触点延时8(常开)*10000
netoutresult[87] = curresult.half.hi;
netoutresult[88] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outpointt[15]>0?outpointt[15]*10000:0);//触点延时8(常闭)*10000
netoutresult[89] = curresult.half.hi;
netoutresult[90] = curresult.half.lo;
//检测结果
curresult.resultdata = (unsigned int)(outresult[0]*10);//吸合电压*10
netoutresult[91] = curresult.half.hi;
netoutresult[92] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outresult[1]*10);//释放电压*10
netoutresult[93] = curresult.half.hi;
netoutresult[94] = curresult.half.lo;
if(lastselect > 0)
{
curresult.resultdata = (unsigned int)(outresult[2]*1000);//吸合气压*1000
netoutresult[95] = curresult.half.hi;
netoutresult[96] = curresult.half.lo;
curresult.resultdata = (unsigned int)(outresult[3]*1000);//释放气压*1000
netoutresult[97] = curresult.half.hi;
netoutresult[98] = curresult.half.lo;
}
else
{
netoutresult[95] = 0;
netoutresult[96] = 0;
netoutresult[97] = 0;
netoutresult[98] = 0;
}
netoutresult[99] = lastselect; //检测类型
//计算CRC
netoutresult[100] = GetMyCRC(netoutresult,100);
//修改状态
netoutcursta[5] |= 0x02;//有检测结果
return(1);
}
unsigned char copytosigned() reentrant
{
if(netoutcursta[5] & 0x04)//有标签数据
return(0);
netoutsigned[0] = machinebase;
netoutsigned[1] = 4;
//数据长度
netoutsigned[2] = 25;
//试件编号
netoutsigned[3] = testname[0];
netoutsigned[4] = testname[1];
netoutsigned[5] = testname[2];
netoutsigned[6] = testname[3];
netoutsigned[7] = testname[4];
netoutsigned[8] = testname[5];
netoutsigned[9] = testname[6];
netoutsigned[10] = testname[7];
//操作者号
switch(curmanno)
{
case 1:
netoutsigned[11] = manname1[0];
netoutsigned[12] = manname1[1];
netoutsigned[13] = manname1[2];
netoutsigned[14] = manname1[3];
netoutsigned[15] = manname1[4];
netoutsigned[16] = manname1[5];
netoutsigned[17] = manname1[6];
netoutsigned[18] = manname1[7];
break;
case 2:
netoutsigned[11] = manname2[0];
netoutsigned[12] = manname2[1];
netoutsigned[13] = manname2[2];
netoutsigned[14] = manname2[3];
netoutsigned[15] = manname2[4];
netoutsigned[16] = manname2[5];
netoutsigned[17] = manname2[6];
netoutsigned[18] = manname2[7];
break;
default:
netoutsigned[11] = ' ';
netoutsigned[12] = ' ';
netoutsigned[13] = ' ';
netoutsigned[14] = ' ';
netoutsigned[15] = ' ';
netoutsigned[16] = ' ';
netoutsigned[17] = ' ';
netoutsigned[18] = ' ';
break;
}
//检测时间
readtimer(disstr,1);
netoutsigned[19] = disstr[0];
netoutsigned[20] = disstr[1];
netoutsigned[21] = disstr[2];
netoutsigned[22] = disstr[3];
netoutsigned[23] = disstr[4];
netoutsigned[24] = disstr[5];
netoutsigned[25] = disstr[6];
netoutsigned[26] = disstr[7];
netoutsigned[27] = lastselect;
netoutcursta[5] |= 0x04;//有标签数据
//计算CRC
netoutsigned[28] = GetMyCRC(netoutsigned,28);
enoutsigned = 1;
return(1);
}
void cardon() reentrant
{
netoutcursta[5] |= 0x08;//有授权标识
}
void teston() reentrant
{
netoutcursta[5] |= 0x01;//有即时数据
}
void readcardno() reentrant
{
Readi2c(cardno[0][0],224,8);
Readi2c(cardno[0][1],232,8);
Readi2c(cardno[1][0],240,8);
Readi2c(cardno[1][1],248,8);
}
void writecardno(unsigned char nu) reentrant
{
if(nu == 0)
{
Writei2c(cardno[0][0],224,8);
Writei2c(cardno[0][1],232,8);
}
else
{
Writei2c(cardno[1][0],240,8);
Writei2c(cardno[1][1],248,8);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -