02-16-2006 03:53 PM
02-16-2006 05:08 PM
02-17-2006 11:22 AM
02-17-2006 12:51 PM
Frank,
I am using the LV 7.1.1 version of this CVI driver in an application I wrote. We should be able to recompile this for 8.0. Basically as I explained with no handshaking the instrument falls out of sync with the controlling computer. Basically the only GPIB command that is supported in that driver is *IDN?. So what I have done is after other calls I use this command and compare the return string to see if it is what I expected. If not I use a popup telling the operator that a GPIB error occurred and to reboot the IFR to clear the bus. I also have instructed the operator to run NI Spy in the background...this seems to cut down the occurance of these errors. Another way to clear the bus that is faster and usually works is to stop the application, and read the bus using MAX until you see a timeout when there is no more data available( usually twice). Then rerun the application. Depending on the application this might be a work around though not an elegant one.
Since the driver was converted from a CVI driver it uses the call library function node. This does not allow us to control the timing between the Write functions and Read functions. If you are doing something that is relatively simple you could use the TCL command set and VISA to write a driver. Just put a wait function between the Write and Read function and experiment with the timing until it looks like it won't fail. I've considered doing this myself but have been hoping that they will actually make the instrument 488.2 compliant. I am assuming that the actual error is that the data buffer is being read by the controller before the instrument is finished writing to it. The other scenario is that the data buffer might not actually be getting flushed every time it is read. I'm hoping my first assumption is correct or they have even more problems with the instrument.
In January of '05' they actually enabled the following commands *SRE xx, *SRE? and *STB?. I recently wrote a simple vi to see what happens to the Status Byte after using IDN? command and reading the data buffer. The MAV bit begins logic low, then goes hi when the data is available. After reading the data (i.e. "IFR Systems, 2975.....) I again query the Status Byte. The MAV bit is still in a logic hi state. I sent screenshots of the front panel and block diagram as well as the .spy files to them. All was heavily notated and they said they were going to look at it. If anyone is interested in this I can post this code as well.
02-28-2006 02:57 PM
02-28-2006 03:34 PM
Here is a copy of the driver which I beleive is in 7.1. It contains the dlls from the LabWindows CVI which the VI's depend on.
I have been in contact with the manufacturer of this instrument and are in negotiations to get them to comply with 488.2. If I receive any good news I'll let you know.