Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Non-controller GPIB software loop stays in read mode after a read, write mode after a write.

I'm using Visual C++ with gpib-32.dll version 1.40.7649 and using code similar to the code in the sample "non-cic.c". I'm finding that when it goes into listener mode, it reads just fine, but then stays in listener mode, doing the ibrd every time. Since there's nothing to read, it times out every time. Same thing for the TALKING mode. If the controller sends a read, the loop goes into the talking mode and I send the info. However, from that point on, the ibsta variable stays with the same value, so I always go though the talking part of the code. On the controller side, I'm using the "Send" command with DABend in the last parameter.

Is this proper be
havior? How can I put the program back into the original DEFAULT mode after completing the read or write?
0 Kudos
Message 1 of 5
(3,187 Views)
If you manually UNT/UNL the bus, does the behavior stop?
Message 2 of 5
(3,187 Views)
I didn't know about the IbcUnAddr option of IBCONFIG. I tried it, and preliminary results indicate it is working. Thanks, Ryan.
0 Kudos
Message 3 of 5
(3,187 Views)
Ryan:

How do you manually UNT/UNL the bus from the non-controller side? (In my situation, I am not in charge of the controller and what GPIB program it is running). I am running into the same situation as "pi" did; for now, I just have a short timeout (30ms), but I would like to return the non-controller to the idle state once it is finished talking or listening.

Thanks!
David
0 Kudos
Message 4 of 5
(3,187 Views)
I'm in the same situation as you are, and I still haven't found a solution better than a short timeout. I'm talking to an NI engineer, and he wants me to buy NI-Device (see pages 804-805)of 2001 catalog.
0 Kudos
Message 5 of 5
(3,187 Views)