跳转至

GTN_SetLaserIoPro

指令原型:

GT_API GTN_SetLaserIoPro(short core,short laserChannel,short doType,short doValue,TListInfo *pListInfo=NULL)

指令类型:

立即指令,调用后立即生效。

指令说明:

设置激光器Do信号输出值。

指令参数说明:

core 核号,正整数,取值范围请参照核号参数范围一栏。
laserChannel 激光通道号,整数,取值范围请参照激光通道号参数范围一栏。
doType 激光器DO信号类型,允许的能量信号类型如下:
LASER_ENABLE_DO(76):激光器使能信号。
LASER_RED_LED_DO(77):激光器红灯指示信号。
LASER_POWER_LATCH_DO(78):激光器功率锁存信号。
doValue 激光器DO信号值,取值范围:[0,1]。
pListInfo 指令流信息结构体指针。详情说明请参照TListInfo
TListInfo
typedef struct  
{
    short list; 
    short reserve1[2];
    short modal;
    long segNum;
    long reserve2[3];
    double reserve3[4];
} TListInfo;
list:指令压入的指令流号,取值范围:[0, 4]。
当pListInfo为空或者list=0时,指令为立即指令,调用后立即生效。
当list>0时,指令为list指令,调用后被发送到指令流中,在启动指令流后顺序执行到该指令才生效。
modal:为1时表示阻塞指令流,等待当前指令完成。本指令不需要设置此参数。
segNum:指令段号,取值范围:[-2147483648, 2147483647]。
reserve1:保留参数,必须为0。
reserve2:保留参数,必须为0。
reserve3:保留参数,必须为0。

指令返回值:

10700:向指令流缓冲区压数据出错。

  • 情况一,指令流数据发送未完成,需要重复调用GTN_ComamndListDataEnd
  • 情况二,或者指令流满,需要重复调用当前指令保证指令压送成功。

17001:指令流参数错误,TListInfo的成员变量list范围超限。
17002:指令流模态参数错误,TListInfo的成员变量modal范围超限。
17053:激光通道号参数错误。
17055:核号参数错误。
17100:保留参数错误,保留参数必须设置为0。
17523:激光器do类型错误,允许范围参考指令详细说明中的描述。
17524:激光器do值错误,允许范围参考指令详细说明中的描述。
11001:执行错误,用户调用过GTN_ComamndListDataEnd,在指令流中还有数据时,又发送了新的指令流指令。必须在指令流全部执行完或者清空指令流数据之后,才允许发送新的指令流指令。
11002:执行错误,指令流缓冲区已满,不允许继续压入指令流数据。
11003:内部执行错误,指令流数据大于允许的元素大小,请联系固高技术支持。
11004:内部执行错误,指令流没有分配空间,请联系固高技术支持。
11014:执行错误,指令流为静态模式,并处于执行过程中时,不允许发送指令流指令。
11091:执行错误,需要操作的激光资源未映射,请确认网络上是否连接了需要操作的激光硬件资源。

其他返回值请参照通用返回值说明

指令示例:

注意事项: