Thanks Scott,
I'm using Windows XP SP2, LabVIEW 5.1, NI 488.2 version 2.20. We do not have a GPIB+ analyzer board available.
The Keithley 182 does have both a "talk" and "listen" state. By
stepping into the KE182read vi, the state is the following:
[Initialize the instrument]
(LSTN=ON, TALK=OFF)
GPIBWRITE {addressstring="6",data="H0X", mode=3}
(LSTN=ON, TALK=OFF)
GPIBREAD {addressstring="6", bytecount=25, mode=0}
(LSTN=OFF, TALK=ON) --> reads data off GPIB
GPIBWRITE {addressstring="6",data="H0X", mode=3}
(LSTN=ON, TALK=OFF)
This is the sequence during the correct readings. I haven't been
completely able to tell how this changes during the erroneous
communications.
I've also tried the following things:
Modify the KE182 to assert SQR when it is ready for a trigger to
read the device. In LabVIEW wait for this RQS to assert the manual trigger
command to read off the KE182. In this setup, the previous problems
still occur - it is able to read several thousand readings, then fails
in the TALK state on the KE182.
Also noteworthy is that this problem seems to occur most frequently
when there is a load on the CPU, but it also occurs without any load at
all.
Thanks
-Michael