diff --git a/motorApp/NewportSrc/NewportRegister.cc b/motorApp/NewportSrc/NewportRegister.cc index 62f5b566..2a285151 100644 --- a/motorApp/NewportSrc/NewportRegister.cc +++ b/motorApp/NewportSrc/NewportRegister.cc @@ -2,9 +2,9 @@ FILENAME... NewportRegister.cc USAGE... Register Newport motor device driver shell commands. -Version: $Revision: 1.8 $ +Version: $Revision: 1.9 $ Modified By: $Author: rivers $ -Last Modified: $Date: 2005-12-07 23:59:21 $ +Last Modified: $Date: 2006-04-06 23:58:48 $ */ /***************************************************************** @@ -52,7 +52,20 @@ static const iocshArg XPSArg0 = {"Element Period*10^4", iocshArgInt}; static const iocshArg tclcallArg0 = {"tcl name", iocshArgString}; static const iocshArg tclcallArg1 = {"Task name", iocshArgString}; static const iocshArg tclcallArg2 = {"Function args", iocshArgString}; - +// XPSSetup arguments +static const iocshArg XPSSetupArg0 = {"Number of XPS controllers", iocshArgInt}; +// XPSConfig arguments +static const iocshArg XPSConfigArg0 = {"Card being configured", iocshArgInt}; +static const iocshArg XPSConfigArg1 = {"IP", iocshArgString}; +static const iocshArg XPSConfigArg2 = {"Port", iocshArgInt}; +static const iocshArg XPSConfigArg3 = {"Number of Axes", iocshArgInt}; +static const iocshArg XPSConfigArg4 = {"Moving poll rate", iocshArgInt}; +static const iocshArg XPSConfigArg5 = {"Idle poll rate", iocshArgInt}; +// XPSConfigAxis arguments +static const iocshArg XPSConfigAxisArg0 = {"Card number", iocshArgInt}; +static const iocshArg XPSConfigAxisArg1 = {"Axis number", iocshArgInt}; +static const iocshArg XPSConfigAxisArg2 = {"Axis name", iocshArgString}; +static const iocshArg XPSConfigAxisArg3 = {"Steps per unit", iocshArgInt}; static const iocshArg * const NewportSetupArgs[2] = {&setupArg0, &setupArg1}; @@ -78,18 +91,32 @@ static const iocshArg * const XPSArgs[1] = {&XPSArg0}; static const iocshArg * const tclcallArgs[3] = {&tclcallArg0, &tclcallArg1, &tclcallArg2}; - +static const iocshArg * const XPSSetupArgs[1] = {&XPSSetupArg0}; +static const iocshArg * const XPSConfigArgs[6] = {&XPSConfigArg0, + &XPSConfigArg1, + &XPSConfigArg2, + &XPSConfigArg2, + &XPSConfigArg4, + &XPSConfigArg5}; +static const iocshArg * const XPSConfigAxisArgs[4] = {&XPSConfigAxisArg0, + &XPSConfigAxisArg1, + &XPSConfigAxisArg2, + &XPSConfigAxisArg3}; + static const iocshFuncDef setupMM3000 = {"MM300Setup", 2, NewportSetupArgs}; static const iocshFuncDef setupMM4000 = {"MM4000Setup",2, NewportSetupArgs}; static const iocshFuncDef setupPM500 = {"PM500Setup", 2, NewportSetupArgs}; static const iocshFuncDef setupESP300 = {"ESP300Setup",2, NewportSetupArgs}; static const iocshFuncDef setupXPSC8 = {"XPSC8Setup", 2, NewportXPSC8SetupArgs}; +static const iocshFuncDef setupXPS = {"XPSSetup", 1, XPSSetupArgs}; static const iocshFuncDef configMM3000 = {"MM3000Config", 3, NewportConfigArgs}; static const iocshFuncDef configMM4000 = {"MM4000Config", 3, NewportConfigArgs}; static const iocshFuncDef configPM500 = {"PM500Config", 3, NewportConfigArgs}; static const iocshFuncDef configESP300 = {"ESP300Config", 3, NewportConfigArgs}; static const iocshFuncDef configXPSC8 = {"XPSC8Config", 4, NewportXPSC8ConfigArgs}; +static const iocshFuncDef configXPS = {"XPSConfig", 6, XPSConfigArgs}; +static const iocshFuncDef configXPSAxis= {"XPSConfigAxis",4, XPSConfigAxisArgs}; static const iocshFuncDef nameXPSC8 = {"XPSC8NameConfig",7, NewportXPSC8NameArgs}; static const iocshFuncDef XPSC8GatheringTest = {"xpsgathering",1, XPSArgs}; @@ -121,6 +148,11 @@ static void setupXPSC8CallFunc(const iocshArgBuf *args) XPSC8Setup(args[0].ival, args[1].ival); } +static void setupXPSCallFunc(const iocshArgBuf *args) +{ + XPSSetup(args[0].ival); +} + static void configMM3000CallFunc(const iocshArgBuf *args) { MM3000Config(args[0].ival, args[1].sval, args[2].ival); @@ -146,6 +178,17 @@ static void configXPSC8CallFunc(const iocshArgBuf *args) XPSC8Config(args[0].ival, args[1].sval, args[2].ival, args[3].ival); } +static void configXPSCallFunc(const iocshArgBuf *args) +{ + XPSConfig(args[0].ival, args[1].sval, args[2].ival, args[3].ival, + args[4].ival, args[5].ival); +} + +static void configXPSAxisCallFunc(const iocshArgBuf *args) +{ + XPSConfigAxis(args[0].ival, args[1].ival, args[2].sval, args[3].ival); +} + static void nameXPSC8CallFunc(const iocshArgBuf *args) { XPSC8NameConfig(args[0].ival, args[1].ival, args[2].ival, args[3].ival,\ @@ -170,12 +213,15 @@ static void NewportRegister(void) iocshRegister(&setupPM500, setupPM500CallFunc); iocshRegister(&setupESP300, setupESP300CallFunc); iocshRegister(&setupXPSC8, setupXPSC8CallFunc); + iocshRegister(&setupXPS, setupXPSCallFunc); iocshRegister(&configMM3000, configMM3000CallFunc); iocshRegister(&configMM4000, configMM4000CallFunc); iocshRegister(&configPM500, configPM500CallFunc); iocshRegister(&configESP300, configESP300CallFunc); iocshRegister(&configXPSC8, configXPSC8CallFunc); + iocshRegister(&configXPS, configXPSCallFunc); + iocshRegister(&configXPSAxis,configXPSAxisCallFunc); iocshRegister(&nameXPSC8, nameXPSC8CallFunc); iocshRegister(&TCLRun, TCLRunCallFunc); #ifdef vxWorks diff --git a/motorApp/NewportSrc/NewportRegister.h b/motorApp/NewportSrc/NewportRegister.h index e354aa81..cbdb5b11 100644 --- a/motorApp/NewportSrc/NewportRegister.h +++ b/motorApp/NewportSrc/NewportRegister.h @@ -2,9 +2,9 @@ FILENAME... NewportRegister.h USAGE... This file contains function prototypes for Newport IOC shell commands. -Version: $Revision: 1.8 $ +Version: $Revision: 1.9 $ Modified By: $Author: rivers $ -Last Modified: $Date: 2006-03-23 00:49:47 $ +Last Modified: $Date: 2006-04-06 23:58:48 $ */ /* @@ -40,6 +40,8 @@ Last Modified: $Date: 2006-03-23 00:49:47 $ #include "motordrvCom.h" #include "tclCall.h" +#include "drvXPSAsyn.h" + /* Function prototypes. */ extern RTN_STATUS MM3000Setup(int, int); extern RTN_STATUS MM4000Setup(int, int);