0

Wisdom of the Ancients: IEEE-488-1978 syntax question

In spite of my generation's belief that technology did not exist prior to 1985, I keep running across evidence to the contrary. Like a digital archeologist, I keep finding Great Tetrahedrons and ancient knowledge written in languages that are both foreign and alien to me. Today, I write of such a find.

 

I am attempting to query an HP 5334B and pulled it's manual to look up how to remotely control the unit and the command strings are... different... than what I've encountered before. It appears to be a much older IEEE-488 standard and the manual's examples are using proprietary HP software. I am making progress in that I have now figured out how to control the unit without it screaming error codes at me but I have not figured out how to query yet.

I was hoping someone could help me out here. If I can just see a Met/Cal command string for querying the display readings of an HP 5334B, I am confident I can logic out everything else I need to know. I just can't seem to figure out the proper syntax to get it to reply.

 

Oh but were there a Rosetta Stone that could unlock the codex before me.

Thanks in advance. :)

9 comments

Date Votes
0
Avatar
Dale Chaudiere

Reference:  HP 5334A/B Operation and Programming, pg 3-93 EXAMPLE 6. SEND SRQ WHEN DATA IS READY

I would try the following.  This assumes the 5334 is the DUT on GPIB1.

IEEE IN,GA1,FN4,SM1,WA1[SRQ 10000][I]

"IN" Initializes the counter

"GA1" Sets gate time one second

"FN4" Places the counter in Period A mode.

"SM1" Sets SRQ mask to asset SRQ when data is ready.

"WA1" Sets counter in Wait t be Addressed mode.

[SRQ 10000] MET/CAL waits for up to 10 s for a SRQ from theDUT.

[I] MET/CAL tells the intrument to talk, reads the output buffer, and attempts to convert the response to a floating point number.

0
Avatar
Jerral Plowman

Found this in an old procedure, may be of use

IEEE [SRQ OFF]

IEEE IN[D1000]

IEEE FN1

IEEE SE1

IEEE AU1

IEEE C01

IEEE [D4000][TERM LF][I][I][I]

0
Avatar
Dale Chaudiere

I would still use service requests, if you can get it to work.  There is no reason to put commands in separate IEEE statements.  The manual defines EOI (End-or-Identify) line, but does not explicitly state that it is raised with the last byte of the measurement response (LF).  I would try it without the [TERM LF] special construction first.  If it does not respond, then add [TERM LF].

Note, the [I][I][I] is probably just "Throw away two readings and keep the third".  This would be better accomplished with VSET or TSET NThrow = 2.

0
Avatar
Dale Chaudiere

MET/CAL has a 5335 FSC.  I checked, and the run time driver appears to use the same commands as the 5334.  Based on the 5335 driver code, [TERM LF] will be required for the 5334.  The 5335 FSC driver also sends LF at the end of each command string.   You can add [OTERM LF] at the beginnning of the statement:

IEEE [OTERM LF][TERM LF]<commands>[SRQ 10000][I]

0
Avatar
Dexter

Fascinating! The last line is what I was needing. Everthing before that is all setup. FN1 for Freq Chan A, SE1 for Sensitivity On, AU1 for Auto Trigger and CO1 for Common Input On. 

So it's the last line that is the mystery to me. It's delaying for four seconds, then a Line Feed Terminator... and then three queries? I will have to experiment with that a bit. Now that I know how it works, I am curious to find all the ways it doesn't work. 

Thank you Mr. Plowman, that was extremely helpful! 

0
Avatar
Dale Chaudiere

The MET/CAL driver for the 5335 FSC does not appear to explicitly check to ensure a 5335 is attached.  You could try configuring "HP 5335A" and temporarily connect your 5334 to GPIB0, at the 5335A configured address.  Then enable Trace=>IEEE-488 and observe the protocol used.

I tried the following in simulation mode:

5335 1kH 1V FA N

0
Avatar
Dexter

Dale,

You are correct. The three queries are just tossing out the first two readings. Using a single query works as well.

0
Avatar
Dexter

I gave that a try and it appears to be erroring out the counter. Error 4.0. 

0
Avatar
Dexter

Thanks again to Dale and J. Plowman. That gives me plenty to work with. So, it seems that the manner with which these older instruments communicates is a lot... slower? We'll go with slower. I've tried simply running the query command as well with some success (why didn't I try that before?). But all in all, I am quite confident I can push on from here. Thanks again for the help! 

Please sign in to leave a comment.