📄 hpi.c
字号:
* 无 *
* 输出参数: *
* 无 *
* *
**************************************************************************/
void MCUParameterWrite()
{
if((eAlarm<ParameterError)||(!bDSPStart))
return;
HPIBlockWrite(MCUParameterAddress, (uchar *)&ParameterValue, 106);
}
/*************************************************************************
* 函数名称: MCUIntputRead() *
* 函数用途: MCU读输入缓冲区数据 *
* 输入参数: *
* 无 *
* 输出参数: *
* 无 *
* *
**************************************************************************/
void MCUInputRead()
{
if(!bDSPStart)
return;
HPIBlockRead(MCUInputBufferAddress, (uchar *)&MCUInputBuffer, 56);
ucINPUT[0]=MCUInputBuffer.ucG[1];
ucINPUT[1]=MCUInputBuffer.ucG[3];
ucINPUT[2]=MCUInputBuffer.ucG[5];
ucDSPAlarm=MCUInputBuffer.ucAlarmCode;
ucMotionComplete=MCUInputBuffer.ucMotionStatus;
if(((MCUInputBuffer.lProgramY-MachineProgramPonitOld.lY)<20000)&&
((MCUInputBuffer.lProgramY-MachineProgramPonitOld.lY)>-20000))
{
CurrentProgramPoint.lY = MCUInputBuffer.lProgramY -ProgramOrigin.lY;
lMacroValue[58] = CurrentProgramPoint.lY ;
}
if(((MCUInputBuffer.lProgramZ-MachineProgramPonitOld.lZ)<20000)&&
((MCUInputBuffer.lProgramZ-MachineProgramPonitOld.lZ)>-20000))
{
// if((ucDSPAlarm==16)&&(bINTERLOCK))
// bZCoordinateChange=0;
// if(bZCoordinateChange)
CurrentProgramPoint.lZ = MCUInputBuffer.lProgramZ - ProgramOrigin.lZ;
lMacroValue[59] = CurrentProgramPoint.lZ;
// else
// ProgramOrigin.lZ = MCUInputBuffer.lProgramZ - CurrentProgramPoint.lZ;
}
CurrentActualPoint.lY = MCUInputBuffer.lMachineY;
CurrentActualPoint.lZ = MCUInputBuffer.lMachineZ;
CurrentLeave.lY=MCUInputBuffer.lLeaveY;
CurrentLeave.lZ=MCUInputBuffer.lLeaveZ;
MachineProgramPonitOld.lY = MCUInputBuffer.lProgramY;
MachineProgramPonitOld.lZ = MCUInputBuffer.lProgramZ;
}
/*************************************************************************
* 函数名称: OperateStateRead() *
* 函数用途: MCU读入工作状态 *
* 输入参数: *
* 无 *
* 输出参数: *
* 无 *
* *
**************************************************************************/
void OperateStateRead()
{
uchar idata ucByteTemp[2];
if(!bDSPStart)
return;
HPIWordWrite(HPIAAdr, OperateStateAddress);
HPITwoByteRead(HPIDAdr, ucByteTemp);
ucOutputBufferBusy=ucByteTemp[1];
}
/*************************************************************************
* 函数名称: OperateStateWrite() *
* 函数用途: MCU读入工作状态 *
* 输入参数: *
* 无 *
* 输出参数: *
* 无 *
* *
**************************************************************************/
void OperateStateWrite()
{
uchar idata ucByteTemp[2];
if((eAlarm<ParameterError)||(!bDSPStart))
return;
ucByteTemp[0]=0;
ucByteTemp[1]=ucOutputBufferBusy;
HPIWordWrite(HPIAAdr, OperateStateAddress);
HPITwoByteWrite(HPIDAdr, ucByteTemp);
}
/*************************************************************************
* 函数名称: FastMultipleWrite() *
* *
* 输入参数: *
* 无 *
* 输出参数: *
* 无 *
* *
**************************************************************************/
void FastMultipleWrite()
{
if(!bDSPStart)
return;
HPIWordWrite(HPIAAdr,FastMultipleAddress);
HPIWordWrite(HPIDAdr,ParameterValue.unFastMultipleScale);
// HPITwoByteWrite(HPIDAdr, &ParameterValue.ucReserve0);
}
/*************************************************************************
* 函数名称: FeedMultipleWrite() *
* *
* 输入参数: *
* 无 *
* 输出参数: *
* 无 *
* *
**************************************************************************/
void FeedMultipleWrite()
{
if(!bDSPStart)
return;
HPIWordWrite(HPIAAdr,FeedMultipleAddress);
HPIWordWrite(HPIDAdr,ParameterValue.unFeedMultipleScale);
// HPITwoByteWrite(HPIDAdr, &ParameterValue.ucReserve1);
}
/*************************************************************************
* 函数名称: HWMultipleWrite() *
* *
* 输入参数: *
* 无 *
* 输出参数: *
* 无 *
* *
**************************************************************************/
void HWMultipleWrite()
{
if(!bDSPStart)
return;
HPIWordWrite(HPIAAdr,HWMultipleAddress);
HPITwoByteWrite(HPIDAdr, &ParameterValue.ucReserve2);
}
/*************************************************************************
* 函数名称: ActualFeedrateRead() *
* 函数用途: 读取实际速度 *
* 输入参数: *
* 无 *
* 输出参数: *
* 无 *
* *
**************************************************************************/
/*
void ActualFeedrateRead()
{
if(!bDSPStart)
return;
HPIWordWrite(HPIAAdr,ActualFeedrateAddress);
HPIWordRead(HPIDAdr, &unActualFeedrate);
}
*/
/*************************************************************************
* 函数名称: YHomeGridRead() *
* *
* 输入参数: *
* 无 *
* 输出参数: *
* 无 *
* *
**************************************************************************/
void YHomeGridRead()
{
if(!bDSPStart)
return;
HPIWordWrite(HPIAAdr,YHomeGrindAddress);
HPIWordRead(HPIDAdr, &ParameterValue.unYHomeGrid);
}
/*************************************************************************
* 函数名称: ZHomeGridRead() * *
* 输入参数: *
* 无 *
* 输出参数: *
* 无 *
* *
**************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -