Added interpose driver from DLS

Added a low-level interpose driver to allow usage of stream devices.
This commit is contained in:
2025-04-17 09:25:42 +02:00
parent 7b904e30db
commit e5a4af14ea
10 changed files with 1147 additions and 1012 deletions

View File

@ -16,4 +16,18 @@ record(longout, "$(INSTR)$(M):ReadConfig") {
field(DTYP, "asynInt32")
field(OUT, "@asyn($(CONTROLLER),$(AXIS),1) READ_CONFIG")
field(PINI, "NO")
}
}
# PMAC controllers can be "flushed" by setting a certain bit. This empties all
# communication buffers. Once the flush is done, the controller acknowledges
# this by sending an echo character. This procedure can take up to 10 ms (see
# Turbo PMAC User Manual, p. 414) and should therefore not be done as part of
# "normal" communications (like the original pmacAsynIPPort driver from DLS
# does). The SINQ driver for the Turbo PMAC controller therefore offers this PV
# in order to manually trigger a controller flush by writing any value to this PV.
record(longout, "$(INSTR)FlushHardware") {
field(DTYP, "asynInt32")
field(OUT, "@asyn($(CONTROLLER),$(AXIS),1) FLUSH_HARDWARE")
field(PINI, "NO")
field(VAL, "1")
}