>>> On 7/13/2004 at 10:47:15 MDT, Peregrine McGehee wrote:
> The initial development for the drvIpac-based SBS IP Octal 232/422/485
> driver was really only tested under RS-232.
> Has anyone had success with the RS-422 version (yet alone the RS-485
> version Pete is asking about)?
Bates is using the IP-Octal 422, with drvAscii/drvSerial.
We experienced seemingly random failures which were solved with the aid of
Richard Dickson from JLab, if I recall correctly.
The problem was due to the module using two VME interrupts, one for ports
0-3 and one for ports 4-7. If ports on both halves were active
simultaneously, drvSerial would sometimes interleave the traffic for the
two ports, leading to a condition where it was waiting for a response that
would never arrive, hanging communications on that port.
The (quick and dirty) solution was to add a few lines to the interrupt
handler in the IP-Octal driver to mask out any further interrupts from the
module until it was finished processing. Note that which VME IRQs are used
depends on which slot on the carrier the module is in.
Here's a diff against our copy of tyGSOctal.c, last revision 9/3/99:
*** /home/locus/epicsdev/BATES/ipacApp/src/tyGSOctal.c Fri Jun 16 16:44:50 2000
--- /home/locus/epicsdev/BATES/ipacApp/src/tyGSOctal.c.orig Tue Dec 7 15:48:44 1999
***************
*** 701,707 ****
volatile unsigned char sr, isr;
unsigned int spin;
int i;
! int level, old_level;
int vector;
int block;
char outChar;
--- 701,707 ----
volatile unsigned char sr, isr;
unsigned int spin;
int i;
! int level;
int vector;
int block;
char outChar;
***************
*** 716,723 ****
level = ipmIrqCmd(pQt->carrier, pQt->module, 0, ipac_irqGetLevel);
vector = sysBusIntAck(level);
- old_level = intLevelSet(2);
-
for (spin=0; spin < MAX_SPIN_TIME; spin++)
{
/*
--- 716,721 ----
***************
*** 790,797 ****
}
}
}
-
- intLevelSet(old_level);
}
/******************************************************************************
--- 788,793 ----
----
Brian McAllister Controls Programmer/Beam Physicist
[email protected] MIT-Bates Linear Accelerator
(617) 253-9537 Middleton, MA
- References:
- Re: Fwd: Re: APS Hardware Catalog - beta version Peregrine McGehee
- Navigate by Date:
- Prev:
Re: RTEMSfor MVME5500 Kate Feng
- Next:
[no subject] bwaggoner
- 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: Fwd: Re: APS Hardware Catalog - beta version Peregrine McGehee
- Next:
Re: Fwd: Re: APS Hardware Catalog - beta version Joe Sullivan
- 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
|