Experimental Physics and Industrial Control System
Hi,
I have come across a problem with float64Array interrupts when writing
asyn based driver support for a device. I may just be doing things wrong
but I have previously got the same thing working for int32, uint32 and
octet interrupts and I think I'm doing pretty much the same now...
In the release notes for Asyn version 4-8 it states that interrupt
support for devAsynFloat64Array has been added (enabling IO Intr. in
waveform records). Previously I used event processing for the same
functionality...
So I enabled IO intr in my waveform record:
record(waveform, "$(DAQMX):DATA") {
field(SCAN, "I/O Intr")
field(PINI, "NO")
field(DTYP, "asynFloat64ArrayIn")
field(PREC, "5")
field(INP, "@asyn(myport1 0 5.0)DATA")
field(NELM, "$(NELM)")
field(FTVL, "DOUBLE")
}
All the asyn registering bits is in the configuration function and
according to the asyn debug output during startup, the interrupt gets
registered:
2007/07/26 10:34:51.478 drvDaqMxBase::drvUserCreate, attempting to
create cmd: DATA
2007/07/26 10:34:51.478 drvDaqMxBase::drvUserCreate, command created:
DATA
...
2007/07/26 10:34:51.478 test:DATA devAsynFloat64Array::getIoIntInfo
registering interrupt
2007/07/26 10:34:51.478 myport1 0 registerInterruptUser
In the driver code when I want to execute the interrupt/callback I do
this:
pasynManager->interruptStart(pPvt->float64ArrayInterruptPvt,
&pclientList);
pNode = (interruptNode *)ellFirst(pclientList);
Here is where the problem occur: pNode is still NULL! So it seems that
the list of interrupt clients is empty - but according to the startup
script the devAsynFloat64Array interrupt has been registered for that
record...(???)
Any idea why this is not working or what I may be doing wrong? Any
suggestion where I need to start looking for more debug information?
Cheers,
Ulrik
--------------------------------------------------------------------
Ulrik Pedersen phone: +44(0)1235-778580
Software Engineer email: [email protected]
Diamond Light Source Ltd.
Rutherford Appleton Laboratory,
Chilton, Didcot
OxfordShire OX11 0DE
--------------------------------------------------------------------
- Replies:
- RE: asyn float64array interrupt problem Mark Rivers
- Navigate by Date:
- Prev:
Flood in area where diamond lab EPICS meeting was held. Thompson, David H.
- Next:
RE: asyn float64array interrupt problem Mark Rivers
- 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:
Flood in area where diamond lab EPICS meeting was held. Thompson, David H.
- Next:
RE: asyn float64array interrupt problem Mark Rivers
- 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