简化SO7 utility的释放
This commit is contained in:
@@ -222,7 +222,15 @@ void CSO7_Proto::_process_rcv_transfer_data(int iEP)
|
||||
case CT_READ_IO_DAT:
|
||||
_process_SO7_CMD_READ_INPUT_PORT_STATUS();
|
||||
break;
|
||||
|
||||
case CT_READ_SEC_REALX:
|
||||
_process_SO7_CMD_READ_ZSIGNAL_POS_X();
|
||||
break;
|
||||
case CT_READ_SEC_REALY:
|
||||
_process_SO7_CMD_READ_ZSIGNAL_POS_Y();
|
||||
break;
|
||||
case CT_READ_SEC_REALZ:
|
||||
_process_SO7_CMD_READ_ZSIGNAL_POS_Z();
|
||||
break;
|
||||
default:
|
||||
TRACE1("_process_rcv_transfer_data() : Unknown ep_buff[EP_02_CMD_IDX]._save_send_cmd : %X \r\n", ep_buff[EP_02_CMD_IDX]._save_send_cmd);
|
||||
TRACE1("_process_rcv_transfer_data() : Unknown ep_buff[EP_81_DATA_IDX]._buffer[0] : %X \r\n", ep_buff[EP_81_DATA_IDX]._buffer[0]);
|
||||
@@ -434,14 +442,18 @@ CSO7_Proto::CSO7_Proto()
|
||||
ep_buff[i]._hProtoPending = false;
|
||||
ep_buff[i]._event = NULL;
|
||||
};
|
||||
g_machine.x._Move_Speed_Gear =3;
|
||||
g_machine.y._Move_Speed_Gear =3;
|
||||
g_machine.z._Move_Speed_Gear =3;
|
||||
g_machine.x._Move_Speed_Gear =2;
|
||||
g_machine.y._Move_Speed_Gear =2;
|
||||
g_machine.z._Move_Speed_Gear =2;
|
||||
g_machine.zm._Move_Speed_Gear =2;
|
||||
g_machine.x._pos_fixed._long_ =0;
|
||||
g_machine.y._pos_fixed._long_ =0;
|
||||
g_machine.z._pos_fixed._long_ =0;
|
||||
g_machine.zm._pos_fixed._long_ =0;
|
||||
g_machine.x._ZSignal_pos._long_=0;
|
||||
g_machine.y._ZSignal_pos._long_=0;
|
||||
g_machine.z._ZSignal_pos._long_=0;
|
||||
|
||||
g_machine.x._d_cur_pos_ = 0;
|
||||
g_machine.y._d_cur_pos_ = 0;
|
||||
g_machine.z._d_cur_pos_ = 0;
|
||||
@@ -3980,7 +3992,63 @@ SSI_STATUS_MOTION CSO7_Proto::_send_cmd_SO7_CMD_READ_INPUT_PORT_STATUS(char Addr
|
||||
ReleaseMutex(g_hEP02_Serial_Mutex);
|
||||
return SSI_STATUS_MOTION_NORMAL;
|
||||
}
|
||||
//==============================================================
|
||||
SSI_STATUS_MOTION CSO7_Proto::_send_cmd_SO7_CMD_READ_ZSIGNAL_POS_X()
|
||||
{
|
||||
WaitForSingleObject(g_hEP02_Serial_Mutex, INFINITE);
|
||||
memset(ep_buff[EP_02_CMD_IDX]._buffer, 0x00, MAX_BUFF_SIZE);
|
||||
|
||||
*(ep_buff[EP_02_CMD_IDX]._buffer) = CT_DATA;
|
||||
*(ep_buff[EP_02_CMD_IDX]._buffer+1) = CT_READ_SEC_REALX;
|
||||
*(ep_buff[EP_02_CMD_IDX]._buffer+2)=0;
|
||||
|
||||
ep_buff[EP_02_CMD_IDX]._size = 0x03;
|
||||
ep_buff[EP_82_DATA_IDX]._size = 0x03;
|
||||
|
||||
g_hEP02_Thread_State=THREAD_RUNNING_STATE1;
|
||||
g_hEP8x_Thread_State=THREAD_RUNNING_STATE2;
|
||||
_do_single_threaded_usb_comm(EP_02_CMD_IDX);
|
||||
ReleaseMutex(g_hEP02_Serial_Mutex);
|
||||
return SSI_STATUS_MOTION_NORMAL;
|
||||
}
|
||||
//==============================================================
|
||||
SSI_STATUS_MOTION CSO7_Proto::_send_cmd_SO7_CMD_READ_ZSIGNAL_POS_Y()
|
||||
{
|
||||
WaitForSingleObject(g_hEP02_Serial_Mutex, INFINITE);
|
||||
memset(ep_buff[EP_02_CMD_IDX]._buffer, 0x00, MAX_BUFF_SIZE);
|
||||
|
||||
*(ep_buff[EP_02_CMD_IDX]._buffer) = CT_DATA;
|
||||
*(ep_buff[EP_02_CMD_IDX]._buffer+1) = CT_READ_SEC_REALY;
|
||||
*(ep_buff[EP_02_CMD_IDX]._buffer+2)=0;
|
||||
|
||||
ep_buff[EP_02_CMD_IDX]._size = 0x03;
|
||||
ep_buff[EP_82_DATA_IDX]._size = 0x03;
|
||||
|
||||
g_hEP02_Thread_State=THREAD_RUNNING_STATE1;
|
||||
g_hEP8x_Thread_State=THREAD_RUNNING_STATE2;
|
||||
_do_single_threaded_usb_comm(EP_02_CMD_IDX);
|
||||
ReleaseMutex(g_hEP02_Serial_Mutex);
|
||||
return SSI_STATUS_MOTION_NORMAL;
|
||||
}
|
||||
//==============================================================
|
||||
SSI_STATUS_MOTION CSO7_Proto::_send_cmd_SO7_CMD_READ_ZSIGNAL_POS_Z()
|
||||
{
|
||||
WaitForSingleObject(g_hEP02_Serial_Mutex, INFINITE);
|
||||
memset(ep_buff[EP_02_CMD_IDX]._buffer, 0x00, MAX_BUFF_SIZE);
|
||||
|
||||
*(ep_buff[EP_02_CMD_IDX]._buffer) = CT_DATA;
|
||||
*(ep_buff[EP_02_CMD_IDX]._buffer+1) = CT_READ_SEC_REALZ;
|
||||
*(ep_buff[EP_02_CMD_IDX]._buffer+2)=0;
|
||||
|
||||
ep_buff[EP_02_CMD_IDX]._size = 0x03;
|
||||
ep_buff[EP_82_DATA_IDX]._size = 0x03;
|
||||
|
||||
g_hEP02_Thread_State=THREAD_RUNNING_STATE1;
|
||||
g_hEP8x_Thread_State=THREAD_RUNNING_STATE2;
|
||||
_do_single_threaded_usb_comm(EP_02_CMD_IDX);
|
||||
ReleaseMutex(g_hEP02_Serial_Mutex);
|
||||
return SSI_STATUS_MOTION_NORMAL;
|
||||
}
|
||||
//==============================================================
|
||||
SSI_STATUS_MOTION CSO7_Proto::_process_SO7_CMD_MOVE_X()
|
||||
{
|
||||
@@ -4240,4 +4308,43 @@ SSI_STATUS_MOTION CSO7_Proto::_process_SO7_CMD_READ_INPUT_PORT_STATUS()
|
||||
g_machine.InPortStatus=0;
|
||||
g_machine.InPortStatus=*(ep_buff[EP_82_DATA_IDX]._buffer);
|
||||
return SSI_STATUS_MOTION_NORMAL;
|
||||
}
|
||||
//==============================================================
|
||||
SSI_STATUS_MOTION CSO7_Proto::_process_SO7_CMD_READ_ZSIGNAL_POS_X()
|
||||
{
|
||||
g_machine.x._ZSignal_pos._char_[2] = *(ep_buff[EP_82_DATA_IDX]._buffer);
|
||||
g_machine.x._ZSignal_pos._char_[1] = *(ep_buff[EP_82_DATA_IDX]._buffer+1);
|
||||
g_machine.x._ZSignal_pos._char_[0] = *(ep_buff[EP_82_DATA_IDX]._buffer+2);
|
||||
g_machine.x._ZSignal_pos._char_[3] = 0;
|
||||
|
||||
if (g_machine.x._ZSignal_pos._long_ > 8388608)
|
||||
g_machine.x._ZSignal_pos._long_=g_machine.x._ZSignal_pos._long_-16777216;
|
||||
|
||||
return SSI_STATUS_MOTION_NORMAL;
|
||||
}
|
||||
//==============================================================
|
||||
SSI_STATUS_MOTION CSO7_Proto::_process_SO7_CMD_READ_ZSIGNAL_POS_Y()
|
||||
{
|
||||
g_machine.y._ZSignal_pos._char_[2] = *(ep_buff[EP_82_DATA_IDX]._buffer);
|
||||
g_machine.y._ZSignal_pos._char_[1] = *(ep_buff[EP_82_DATA_IDX]._buffer+1);
|
||||
g_machine.y._ZSignal_pos._char_[0] = *(ep_buff[EP_82_DATA_IDX]._buffer+2);
|
||||
g_machine.y._ZSignal_pos._char_[3] = 0;
|
||||
|
||||
if (g_machine.y._ZSignal_pos._long_ > 8388608)
|
||||
g_machine.y._ZSignal_pos._long_=g_machine.y._ZSignal_pos._long_-16777216;
|
||||
|
||||
return SSI_STATUS_MOTION_NORMAL;
|
||||
}
|
||||
//==============================================================
|
||||
SSI_STATUS_MOTION CSO7_Proto::_process_SO7_CMD_READ_ZSIGNAL_POS_Z()
|
||||
{
|
||||
g_machine.z._ZSignal_pos._char_[2] = *(ep_buff[EP_82_DATA_IDX]._buffer);
|
||||
g_machine.z._ZSignal_pos._char_[1] = *(ep_buff[EP_82_DATA_IDX]._buffer+1);
|
||||
g_machine.z._ZSignal_pos._char_[0] = *(ep_buff[EP_82_DATA_IDX]._buffer+2);
|
||||
g_machine.z._ZSignal_pos._char_[3] = 0;
|
||||
|
||||
if (g_machine.z._ZSignal_pos._long_ > 8388608)
|
||||
g_machine.z._ZSignal_pos._long_=g_machine.z._ZSignal_pos._long_-16777216;
|
||||
|
||||
return SSI_STATUS_MOTION_NORMAL;
|
||||
}
|
||||
Reference in New Issue
Block a user