Hi Florian,
On 2012-09-10 Florian Feldbauer wrote:
>
> Up to now the driver support in EPICS is only synchronous. Is there any
> documentation on how to program an
> asynchronous driver support? For some other devices we would need an
> asynchronous support.
While I second Mark Rivers' suggestion that you consider converting your code
to become an Asyn Port Driver, if that doesn't prove feasible you might want
to take a look at my driver for the TEWS Tip810 IP module. It's basically a
vxWorks driver for the PCA82C200 CAN interface chip (supporting the raw CANbus
protocol only), and some generic CANbus device support. The latter gives
asynchronous support for most of the standard record types with I/O Interrupt
support, and even on-demand processing of output records in response to an RTR
message (I don't know if that kind of thing is possible through Asyn).
You can find the documentation and tar-files for this driver at
https://svn.aps.anl.gov/trac/epics/ipac
Look under the specific version link there for the documentation, and in the
drvTip810 directory in the tar-file for the source code.
This code is released under the LGPL, so you're free to modify and re-use say
just the device support part if you wish, as long as you include the source
code if you distribute copies to anyone else.
Information on how to write asynchronous device support is spread around a
bit; there is some text under the individual record types in the record
reference manual on the EPICS Wiki but that isn't very comprehensive. There's
a bit more detailed description in the Device Support lecture from the latest
USPAS course, see http://www.aps.anl.gov/epics/docs/USPAS2010.php and finally
there's a chapter on Device Support in the Application Developers' Guide which
may also help — the code examples there are getting a bit old now, but should
still work.
HTH,
- Andrew
--
Never interrupt your enemy when he is making a mistake.
-- Napoleon Bonaparte
- References:
- ISEG EHS device support on the Raspberry Pi Computer Florian Feldbauer
- Navigate by Date:
- Prev:
windows-x64 tool versions james.rowland
- Next:
Does anyone have support for Hamamatsu ORCA Flash 4.0? nick.rees
- 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: ISEG EHS device support on the Raspberry Pi Computer Paul Nord
- Next:
Does anyone have support for Andor Neo Phillip Sorensen
- 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
|