Yes, you are right. But slightly different. User have to set the V & I. EPICS device support takes these values and need
to pass both value to linux driver to set power.
Linux driver takes 2 value so we have to set both value we cant set single value.
as you suggest way to take 2 PVs how i can combine both in the asyn driver ? if by some way it is possible in asyn driver
can combine it then my problem solve.
Thanks Mark
__________________________________________________________________________________________________________________________
From: Mark Rivers <[email protected]>
To: 'Vbhagat' <[email protected]>; "[email protected] " <[email protected]>
Sent: Wednesday, March 13, 2013 9:35 PM
Subject: RE: asynInt32 pass 2 value
What I am asking is what are the two values used for? Are they for 2 different parameters, for example one controls the
voltage and the controls the current on a power supply. Or are you trying to send 2 successive values of the voltage?
If they are 2 different parameters then you should be using the drvUser interface to pass that information from device
support to the driver.
For example one record might be:
record(ao, ?Current?) {
field(DTYP, ?asynInt32?)
field(OUT, ?@asyn($(PORT),0,0)CURRENT)
}
record(ao, ?Voltage?) {
field(DTYP, ?asynInt32?)
field(OUT, ?@asyn($(PORT),0,0)VOLTAGE)
}
The asyn driver will take the drvUser strings ?CURRENT? and ?VOLTAGE? and parse them. Typically it will set the pasynUser->reason
field of the device support pasynUser as a flag to indicate what parameter this record is associated with.
If this is the type of thing you are trying to do then you should not be trying to send two values over the asynInt32
interface at the same time (which is not possible). You send them separately, with the pasynUser->reason flag that
indicates which parameter is being sent.
Mark
From: Vbhagat [mailto:[email protected]]
Sent: Wednesday, March 13, 2013 3:12 PM
To: Mark Rivers; [email protected]
Subject: RE: asynInt32 pass 2 value
Actually i want to pass 2 value & driver do process on both. I think asyIntt32Array can use , but specifically. I don't
know how to use it.
With regard
Sent from Samsung Mobile
Mark Rivers <[email protected]> wrote:
What do you want to do with the two values? Have the driver process one and then the other soon after? Why do you want
to send 2 values?
Mark
________________________________
From: [email protected] [[email protected]] on behalf of Vikram Bhagat [[email protected]]
Sent: Wednesday, March 13, 2013 4:51 AM
To: [email protected]
Subject: asynInt32 pass 2 value
Hi all,
Is there any way to pass 2 values for asynInt32 PVs ?
for example
$$ caput PVNAME 255 254
and record pass these 2 values to device support for processing.
or by any othere DTYP have such facility.....
Thanks