⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 netsend.h

📁 C51下uc/osii的一个完整的LCD项目源码
💻 H
📖 第 1 页 / 共 2 页
字号:
						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 + -