EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Problem with UInt32Digital in Asyn
From: "Wilkins, Stuart" <[email protected]>
To: Mark Rivers <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Wed, 16 Apr 2014 11:39:49 +0000
Hi Mark,

Works a treat! Thanks.

S
On Apr 15, 2014, at 7:39 AM, Mark Rivers <[email protected]> wrote:

> Hi Stuart,
> 
> You have not told the asynPortDriver base class that you will be using the asynUInt32Digital interface.  You do that with the interfaceMask and interruptMask arguments to the ADDriver constructor.
> 
> Change this:
> 
>  : ADDriver(portName, 1, NUM_FastCCD_DET_PARAMS, maxBuffers, maxMemory, 
>             asynEnumMask, asynEnumMask,
>             ASYN_CANBLOCK, 1, priority, stackSize)
> 
> to this:
> 
>  : ADDriver(portName, 1, NUM_FastCCD_DET_PARAMS, maxBuffers, maxMemory, 
>             asynEnumMask | asynUInt32DigitalMask,  asynEnumMask | asynUInt32DigitalMask,
>             ASYN_CANBLOCK, 1, priority, stackSize)
> 
> Mark
> 
> ________________________________________
> From: [email protected] [[email protected]] on behalf of Wilkins, Stuart [[email protected]]
> Sent: Tuesday, April 15, 2014 5:38 AM
> To: [email protected]
> Subject: Problem with UInt32Digital in Asyn
> 
> Hi All,
> 
> I am having a problem using the UInt32Digital type in ASYN. I am writing an areaDetector driver and have a camera that gives status back in 3 registers. I would like to read this value from the camera and put it into a UInt32Digital type so that I can make many records for all the status bits. In the constructor of the class I define:
> 
> createParam(FastCCDDCMStatusString,asynParamUInt32Digital,&FastCCDDCMStatus);
> 
> Then when I poll the camera I write the parameter using:
> 
> setUIntDigitalParam(FastCCDDCMStatus, dcm, 0xFFFF);
> 
> This works for all other parameters but not for this one. When the IOC boots, I get the rather cryptic message:
> 
> XF:23ID1-ES{Det-CCD}cam1:test devAsynUInt32Digital::initCommon findInterface asynUInt32DigitalType
> 
> I am sure this is most likely something stupid, but have drawn a blank to what it is. I would appreciate any help anyone has on getting this going. The code can be viewed at:
> 
> https://github.com/NSLS-II-CSX/ADFastCCD
> 
> Thanks!
> Stuart



References:
Problem with UInt32Digital in Asyn Wilkins, Stuart
RE: Problem with UInt32Digital in Asyn Mark Rivers

Navigate by Date:
Prev: EDM X-Y Graph Zenon Szalata
Next: RE: How to stop acquire in DblCorrelation Mode for MarCCD in AreaDetector module Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: Problem with UInt32Digital in Asyn Mark Rivers
Next: importing "org.csstudio.utility.pv" in BOY Jython scripts Hovanes Egiyan
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 17 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·