Hi all,
I have a device that sends a response on command
"on/off" (requested value) or "INTERLOCK").
I use a @mismatch exception handler and redirection to record in
order to catch this "INTERLOCK" string. After that I turn on or off the
LED widget
(Interlocked or Non-Interlocked). When I started IOC it gave me a buffer
overflow.
Buffer overflow is appeared after adding arg: (\$2).
DB and proto file are following:
DB:
# requested value laser state
record(bi, "$(device):StatEnable")
{
field(DESC, "Laser Enabled")
field(DTYP, "stream")
field(INP, "@fibotecLtbis.proto
get_enable($(channel),$(device):StatEnableInterlock) $(port)")
field(SCAN, "1 second")
field(ZNAM, "Off")
field(ONAM, "On")
field(PINI,"YES")
}
#makro
#channel=1
#device=name:ch1
#
#Catching INTERLOCK message
record(bi, "$(device):StatEnableInterlock")
{
field(DESC, "Laser Enabled")
field(ZNAM, "INTERLOCK")
field(ONAM, "Ok")
field(VAL, "1")
field(PINI,"YES")
}
Proto file:
get_enable { out "get ch\$1 status"; in "get ch\$1 status\r\r\n =
%{off|on } ";
@mismatch {in "get ch\$1 status\r\r\n%(\$2){INTERLOCK}";}}
Thanks Jan
- Replies:
- RE: Stream device problem with redirection in @mismatch Mazanec Tomáš
- Re: Stream device problem with redirection in @mismatch Dirk Zimoch
- Navigate by Date:
- Prev:
Fwd: EPICSv4 and pvAccess to an IOC White, Greg
- Next:
EPICS UIs in the context of changing enum record identifiers Jameson Graef Rollins
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
<2015>
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
RE: STAT=SCAN recover Mark Rivers
- Next:
RE: Stream device problem with redirection in @mismatch Mazanec Tomáš
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
<2015>
2016
2017
2018
2019
2020
2021
2022
2023
2024
|