diff --git a/PS300/PS300-IOC-01App/src/build.mak b/PS300/PS300-IOC-01App/src/build.mak index e43786763..b356d27ae 100644 --- a/PS300/PS300-IOC-01App/src/build.mak +++ b/PS300/PS300-IOC-01App/src/build.mak @@ -29,6 +29,7 @@ $(APPNAME)_DBD += calcSupport.dbd $(APPNAME)_DBD += asyn.dbd $(APPNAME)_DBD += drvAsynSerialPort.dbd $(APPNAME)_DBD += drvAsynIPPort.dbd +$(APPNAME)_DBD += drvPrologixGPIB.dbd $(APPNAME)_DBD += luaSupport.dbd $(APPNAME)_DBD += stream.dbd ## add other dbd here ## diff --git a/PS300/iocBoot/iocPS300-IOC-01/config.xml b/PS300/iocBoot/iocPS300-IOC-01/config.xml index 992b3ab8e..2ff7baeae 100644 --- a/PS300/iocBoot/iocPS300-IOC-01/config.xml +++ b/PS300/iocBoot/iocPS300-IOC-01/config.xml @@ -5,6 +5,7 @@ IOC to control the Stanford powersupply 300 series IOCs + diff --git a/PS300/iocBoot/iocPS300-IOC-01/st-common.cmd b/PS300/iocBoot/iocPS300-IOC-01/st-common.cmd index d1b1a56f9..889349da7 100644 --- a/PS300/iocBoot/iocPS300-IOC-01/st-common.cmd +++ b/PS300/iocBoot/iocPS300-IOC-01/st-common.cmd @@ -4,24 +4,32 @@ epicsEnvSet "DEVICE" "L0" ##ISIS## Run IOC initialisation < $(IOCSTARTUP)/init.cmd +stringiftest("GPIB", "$(IPADDR=)", 3) +stringiftest("SERIAL", "$(PORT=)", 3) + ## Device simulation mode IP configuration $(IFDEVSIM) drvAsynIPPortConfigure("$(DEVICE)", "localhost:$(EMULATOR_PORT=57677)") ## For recsim: $(IFRECSIM) drvAsynSerialPortConfigure("$(DEVICE)", "$(PORT=NUL)", 0, 1, 0, 0) -## For real device: -$(IFNOTDEVSIM) $(IFNOTRECSIM) drvAsynSerialPortConfigure("$(DEVICE)", "$(PORT=NO_PORT_MACRO)", 0, 0, 0, 0) -$(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)", -1, "baud", "$(BAUD=9600)") -$(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)", -1, "bits", "$(BITS=8)") -$(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)", -1, "parity", "$(PARITY=none)") -$(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)", -1, "stop", "$(STOP=1)") +## For real RS2323 serial device: +$(IFSERIAL) $(IFNOTDEVSIM) $(IFNOTRECSIM) drvAsynSerialPortConfigure("$(DEVICE)", "$(PORT=NO_PORT_MACRO)", 0, 0, 0, 0) +$(IFSERIAL) $(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)", -1, "baud", "$(BAUD=9600)") +$(IFSERIAL) $(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)", -1, "bits", "$(BITS=8)") +$(IFSERIAL) $(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)", -1, "parity", "$(PARITY=none)") +$(IFSERIAL) $(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)", -1, "stop", "$(STOP=1)") ## Hardware flow control off -$(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)", 0, "clocal", "Y") -$(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)",0,"crtscts","N") +$(IFSERIAL) $(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)", 0, "clocal", "Y") +$(IFSERIAL) $(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)",0,"crtscts","N") ## Software flow control off -$(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)",0,"ixon","N") -$(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)",0,"ixoff","N") +$(IFSERIAL) $(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)",0,"ixon","N") +$(IFSERIAL) $(IFNOTDEVSIM) $(IFNOTRECSIM) asynSetOption("$(DEVICE)",0,"ixoff","N") + +## GPIB prologix +$(IFGPIB) $(IFNOTDEVSIM) $(IFNOTRECSIM) prologixGPIBConfigure("$(DEVICE)", "$(IPADDR=)") +$(IFGPIB) $(IFNOTDEVSIM) $(IFNOTRECSIM) prologixGPIBSetOption("$(DEVICE)", "timeout_ms", 2000) +#$(IFGPIB) $(IFNOTDEVSIM) $(IFNOTRECSIM) prologixGPIBSetOption("$(DEVICE)", "send_eoi", 0) ## Load record instances