From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

pci-gpib settings

I'm having communications issues with an Agilent ESA E4402B spectrum analyzer. I've never taken the time to really get to know my GPIB card and I think that my problem may be related to my settings. Where can I find out what the different settings mean? For example: "Set EOI with EOS", "EOS Ends Read", "Unadressing", "Assert EOI on Right".  (These are in the CW GPIB control in VB6)
 
On NI-Max, I assume "Send EOI at End of Write" is the same as "Assert EOI on Right" in the component works control noted above.  The help pointer in NI max seems to fairly clearly identify this as something that should always be enabled to identify to the device that the message is complete. Am I correct in assuming that the "EOI Line" is a control line on the GPIB bus?
 
"Terminate Read on EOS". This seems to be the same as "EOS Ends Read". What instances would be more beneficial to have this on? It seems that it has no great positive effect on my communications when set either way.
 
"Set EOI with EOS on Write" . Same as the above question. By default, this is disabled, but it seems like it would be good to have asserted. Any good reasons for or against enabling this feature?
 
What is EOS Byte "0"? Is this the same as no byte for EOS or is it an actual "0x00" transmition? Would 10 or 13 go better here?
 
In what instances should the GPIB interface card assert REN when it is the SC? From what the help-tip indicates, REN is the "Remote Enable" control line on the GPIB bus. What does this line do and should I be asserting it? Note that it is disabled by default and I have not enabled it.
 
Is there any benefit to setting the Timeout setting to 3sec as opposed to 10sec?
 
My final question is: Can I change the card settings with the CWGPIB control or do the settings always have to reflect those setup in NI-Max?
 
Thanks in advance for any help, links, or suggestions.
0 Kudos
Message 1 of 2
(2,970 Views)

tbihn,

Wow, that's a lot of questions!

Send EOI at End of Write in MAX should accomplish the same thing as Assert EOI on Write in CW.  EOI is indeed a control line on the GPIB bus, it is asserted when a write is completed to signal the end of the command.

Terminate Read on EOS in MAX should be the same as EOS Ends Read on CW.  This is generally not used since EOI is the most common form of termination, but EOS enables you to end a read when a certain character is read, such as a carriage return or line feed.  This is usually not necessary though.

Set EOI with EOS on Write gives you the benefit of sending two different methods of termination.  You could think of this as "covering all bases".  It is disabled by default because EOI is the default termination method, so if you are not paying attention to your EOS setting, you could be sending out accidental EOI signals if one of your transmitted characters mistakenly matches the EOS character that you aren't using.

I am not 100% on what the EOS byte "0" setting does, but I if you actually wanted to set your EOS character to line feed or carriage return, you would need to change it to the appropriate number.  If you click in the EOS byte field, then click on the ? button in the top right corner of the Properties window, you can get more details about this setting.

REN is the Remote Enable line, which tells the instrument that GPIB is going to send commands to it.  It should be enabled before you begin your GPIB communication to the instrument to let it know it will be controlled remotely (by the PCI-GPIB card).

Setting the timeout to a lower number will let your commands time out faster, which reduces the time that a bad command takes before it errors out.  However, this could also be a bad thing if you have commands that take longer than the timeout to execute, such as large data transfers.  If this is the case, a short timeout will cut the command off before it finishes, resulting in lost data and an unnecessary error.

The settings you set in CWGPIB should override the default ones from MAX in your program.

Hope this helps, have a good day!

Sincerely,
 
RossC
0 Kudos
Message 2 of 2
(2,943 Views)