]> jspc29.x-matter.uni-frankfurt.de Git - mvd_epics.git/commitdiff
AGILENT_34411A: .proto .db and other requirements
authorPhilipp Klaus <philipp.klaus@gmail.com>
Tue, 22 Aug 2017 10:00:33 +0000 (12:00 +0200)
committerPhilipp Klaus <philipp.klaus@gmail.com>
Tue, 22 Aug 2017 10:00:57 +0000 (12:00 +0200)
AGILENT_34411A/AGILENT_34411AApp/Db/AGILENT_34411A.db [new file with mode: 0644]
AGILENT_34411A/AGILENT_34411AApp/Db/Makefile
AGILENT_34411A/AGILENT_34411AApp/src/Makefile
AGILENT_34411A/configure/RELEASE
AGILENT_34411A/iocBoot/iocAGILENT_34411A/st.cmd
AGILENT_34411A/protocols/AGILENT_34411A.proto [new file with mode: 0644]

diff --git a/AGILENT_34411A/AGILENT_34411AApp/Db/AGILENT_34411A.db b/AGILENT_34411A/AGILENT_34411AApp/Db/AGILENT_34411A.db
new file mode 100644 (file)
index 0000000..a458b2e
--- /dev/null
@@ -0,0 +1,25 @@
+#############################################
+# ###                                   ### #
+# ### EPICS Database for                ### #
+# ### AGILENT_34411A                    ### #
+# ###                                   ### #
+# ### author: P.Klaus                   ### #
+# ###                                   ### #
+# ### Ref 1.0; 2017-08-22               ### #
+# ###                                   ### #
+# ### macros:                           ### #
+# ###         sys   system              ### #
+# ###         sub   subsystem           ### #
+# ###         vsys  voltage sub system  ### #
+# ###         PORT  Asyn Interface      ### #
+#############################################
+
+record (ai, "$(sys):$(sub):POWER:$(vsys):Voltage") {
+  field (DTYP, "stream")
+  field (INP,  "@AGILENT_34411A.proto getVoltage $(PORT)")
+  field (SCAN, "1 second")
+  field (EGU,  "V")
+  field (PREC, "5")
+  #field (ADEL, "0.07")
+  #field (MDEL, "0.01")
+}
index 983981d401b27c05644f2f2cc19cbf888f053bf3..cf9877e133c638a7c2446349027f5fb78787808c 100644 (file)
@@ -11,6 +11,7 @@ include $(TOP)/configure/CONFIG
 # Create and install (or just install) into <top>/db
 # databases, templates, substitutions like this
 #DB += xxx.db
+DB += AGILENT_34411A.db
 
 #----------------------------------------------------
 # If <anyname>.db template is not named <anyname>*.template add
index 5d184e8439de7f4ce69336b1b6f65d3728eaff56..ee40c1e190e496fc4a23d1bc504f8f5d4503b2c9 100644 (file)
@@ -14,12 +14,17 @@ DBD += AGILENT_34411A.dbd
 
 # AGILENT_34411A.dbd will be made up from these files:
 AGILENT_34411A_DBD += base.dbd
+AGILENT_34411A_DBD += stream.dbd
+AGILENT_34411A_DBD += asyn.dbd
+AGILENT_34411A_DBD += drvVxi11.dbd
 
 # Include dbd files from all support applications:
 #AGILENT_34411A_DBD += xxx.dbd
 
 # Add all the support libraries needed by this IOC
 #AGILENT_34411A_LIBS += xxx
+AGILENT_34411A_LIBS += stream
+AGILENT_34411A_LIBS += asyn
 
 # AGILENT_34411A_registerRecordDeviceDriver.cpp derives from AGILENT_34411A.dbd
 AGILENT_34411A_SRCS += AGILENT_34411A_registerRecordDeviceDriver.cpp
index bd6b780b1ca1620a0b61ddf3a126e3a14a4819d6..ed27f29bc9ca2d61c2a31de548c24badb64110d4 100644 (file)
 
 # Variables and paths to dependent modules:
 #MODULES = /path/to/modules
+MODULES = /home/scs/EPICS/EPICS/modules
 #MYMODULE = $(MODULES)/my-module
 
 # If using the sequencer, point SNCSEQ at its top directory:
 #SNCSEQ = $(MODULES)/seq-ver
+SNCSEQ = $(MODULES)/synApps_5_8/support/seq-2-2-1
+ASYN = $(MODULES)/synApps_5_8/support/asyn-4-26
+STREAM = $(MODULES)/synApps_5_8/support/stream-2-6a
 
 # EPICS_BASE should appear last so earlier modules can override stuff:
 EPICS_BASE = /home/scs/EPICS/EPICS/base
index e3b34842f56f9e0ab826c86d4beed2cab4fcf1a3..3e6498f05ccc86a14439c57849afde75421602da 100644 (file)
@@ -5,15 +5,22 @@
 
 < envPaths
 
+epicsEnvSet ("STREAM_PROTOCOL_PATH", "${TOP}/protocols")
+
 cd "${TOP}"
 
 ## Register all support components
 dbLoadDatabase "dbd/AGILENT_34411A.dbd"
 AGILENT_34411A_registerRecordDeviceDriver pdbbase
 
+#vxi11Configure("portName","inet_addr",recoverWithIFC,timeout,"vxiName",priority,noAutoConnect)
+vxi11Configure("AGILENT_34411A_PORT","192.168.0.207",0,0.0,"inst0",0,0)
+
 ## Load record instances
 #dbLoadRecords("db/xxx.db","user=scs")
 
+dbLoadRecords("db/AGILENT_34411A.db", "PORT=AGILENT_34411A_PORT,sys=CBM,sub=MVD,vsys=AGILENT_34411A")
+
 cd "${TOP}/iocBoot/${IOC}"
 iocInit
 
diff --git a/AGILENT_34411A/protocols/AGILENT_34411A.proto b/AGILENT_34411A/protocols/AGILENT_34411A.proto
new file mode 100644 (file)
index 0000000..e98b6b2
--- /dev/null
@@ -0,0 +1,29 @@
+#################################################
+# ###                                       ### #
+# ### StreamDevice Protocol for             ### #
+# ### AGILENT_34411A                        ### #
+# ###                                       ### #
+# ### author: P.Klaus                       ### #
+# ###                                       ### #
+# ### Ref 1.0; 2017-08-22                   ### #
+#################################################
+
+###################
+# ### Globals ### #
+###################
+Terminator    = LF;
+LockTimeout   = 5000;
+ReplyTimeout  = 500;
+ReadTimeout   = 500;
+WriteTimeout  = 300;
+ExtraInput    = Ignore;
+
+#####################
+# ### Protocols ### #
+#####################
+
+
+getVoltage {
+  out "READ?";
+  in  "%E";
+}