//更新数据头信息 //参数用于选定本次发送的数据类型和指定反馈到下位机的数据类型 public void UpdateTxDataHead(MsgTypesID TxDataID, MsgTypesID FeedbackID) { Tx_Datahead.Data_Head1 = UserDatas.Datahead1; Tx_Datahead.Data_Head2 = UserDatas.Datahead2; Tx_Datahead.CMD_type = (byte)TxDataID; Tx_Datahead.DataFeedback = (byte)FeedbackID; Tx_Datahead.HeadVerify = Tx_Datahead.Data_Head1 * Tx_Datahead.Data_Head2 * Tx_Datahead.CMD_type * Tx_Datahead.DataFeedback; }
//由数据类型标签到发送缓冲区的映射 public object GetDataToSend(MsgTypesID TxDataID) { object Msg = null; //获取待发送的数据内容 switch (TxDataID) { case MsgTypesID.Tx_ErrorData: Msg = EmptyTxBuffer; break; case MsgTypesID.Tx_EmptyCMD: Msg = EmptyTxBuffer; break; case MsgTypesID.Tx_SampleCMD: Msg = Tx_TestCtrlCMD; break; case MsgTypesID.Tx_BaseMotionCMD: Msg = Tx_BaseMotionCMD; break; case MsgTypesID.Tx_PlanMotionTestCMD: Msg = Tx_PlanCtrlCMD; break; case MsgTypesID.Tx_AutoProcessCMD: Msg = Tx_MR1AutoCtrlCMD; break; case MsgTypesID.Tx_UpperActionDebugCMD: Msg = Tx_ActionDebugCMD; break; case MsgTypesID.Tx_PIDSetCMD: Msg = Tx_PIDSetCMD; break; default: Msg = null; break; } return(Msg); }