请教几位大哥,请问用LAB VIEW怎么实现??DOEVENT用什么表示出来???
//加减速运动if(startv<=Speed)
{
//后面的参数1值意为手动减速,因为只能用手动减速
g_CtrlCard.Set_DecMode(1,0,1);
g_CtrlCard.Set_DecPos(1,Pos,startv,Speed,Add);
}
//插补减速禁止响应函数
g_CtrlCard.ForbidDec(no);
//------------第一段----------------------
g_CtrlCard.Interp_Move2(1,Pos,Pos);
while(true)
{
DoEvent();
g_CtrlCard.Get_ErrorInf(1,status1);
if(status1!=0 || g_WorkStatus==0)
goto err;
//status2: 0:不允许写入 1:允许写入
g_CtrlCard.Get_AllowInpStatus(no,status2);
if(status2!=0)break;
}
//------------第二段----------------------
g_CtrlCard.Interp_Move2(1,Pos,Pos);
while(true)
{
DoEvent();
g_CtrlCard.Get_ErrorInf(1,status1);
if(status1!=0 || g_WorkStatus==0)
goto err;
//status2: 0:不允许写入 1:允许写入
g_CtrlCard.Get_AllowInpStatus(no,status2);
if(status2!=0)
break;
}
//------------第三段----------------------
g_CtrlCard.Interp_Move2(1,Pos,Pos);
while(true)
{
DoEvent();
g_CtrlCard.Get_ErrorInf(1,status1);
if(status1!=0 || g_WorkStatus==0)goto err;
g_CtrlCard.Get_AllowInpStatus(no,status2);
if(status2!=0)break;
}
//------------最后一段----------------------
g_CtrlCard.AllowDec(no);//插补减速允许响应函数
g_CtrlCard.Interp_Move2(1,Pos,Pos);
while(true)
{
DoEvent();
g_CtrlCard.Get_ErrorInf(1,status1);
if(status1!=0 || g_WorkStatus==0) //g_WorkStatus为停止的时候就报错
goto err;
g_CtrlCard.Get_Status(no,status2,1);
if(status2==0)break;
}
g_WorkStatus=0;
return;
err:
MessageBox("错误!");
return;
} 好像是一个什么函数,在LV中相当一个子VI来用的吧
页:
[1]