EmbeddedRelated.com
Forums

RS232 to GPIB converter using NAT9914

Started by Mirna October 18, 2005
Hi,

I'm a student at the Faculty of Electrical Engineering and computing in
Zagreb, Croatia.For my bachelor degree im designing a sort of
converter.It would be an RS232 to GPIB converter.I'm using
microcontroller from 8051 family  and NAT9914 as interface to GPIB bus.
The NAT9914 handles the communication layer,but doesn't interpret too
much of the data, so if I would like to make IEEE 488.2 compatibile
device (which takes care of the required IEEE 488.2 commands ) I'd have
to create a software construct for it.
I was wondering if anyone did that.If someone did, I would appreciate
to contact me on my e-mail: mirna_1998@yahoo.com or
mirna.bartulovic@fer.hr.
I know that there is an NI product named GPIB-232CV-A RS-232 to GPIB
Converter, but the whole purpose of my work is to learn to do it this
way if it is possible.

Thanks!

Mirna

Mirna wrote:
> I'm a student at the Faculty of Electrical Engineering and computing in > Zagreb, Croatia.For my bachelor degree im designing a sort of > converter.It would be an RS232 to GPIB converter.I'm using > microcontroller from 8051 family and NAT9914 as interface to GPIB bus. > The NAT9914 handles the communication layer,but doesn't interpret too > much of the data, so if I would like to make IEEE 488.2 compatibile > device (which takes care of the required IEEE 488.2 commands ) I'd have > to create a software construct for it.
You may or may not want to handle the IEEE 488.2 style commands in the converter. If the goal is to allow GPIB control of a very simple, existing RS232 device then you would implement the command and status functions in the converter and accept limited functionality. But if the RS232 device is moderately sophisticated, the converter should probably pass most of the commands through the serial link and let the device itself interpret them and generate appropriate responses. There's a standard called SCPI that is basically an implementation of IEEE 488.2 style signalling over an abitrary link - serial, ethernet, etc - consider building a pass-through converter that would turn a serial SCPI instrument into a GPIB SCPI instrument. And if your converter is intended for use in the other direction, with the RS232 connected to your computer and the GPIB connected to a device, then you want to pass everything through so that the computer can leverage the power of the IEEE 488.2 signalling.
Hi,

Actually, RS232 would be connected to host computer, and the GPIB port
is connected to the instrument.The purpose of the whole device
(convertor) would be to manage programmable source with
microcontroller(8051 family).
On National Instruments web-site, there is an document about  it:
http://zone.ni.com/devzone/conceptd.nsf/webmain/40D4BB8DCD8CEB35862568040069E228/$File/AN110.pdf

The thing is that that is an example of 488.1 compliant device.With
expanded parsing routine it would become 488.2 compliant device.
So I was wondering if anyone tried to write software for it.

Tnx

Mirna

Most of the parsing task is on the GPIB device side which you aren't
building.  The host computer merely needs to send the commands it
desires to achieve whatever you are trying to do, and make sense of the
response to queries.  Because of that, you only have to implement as
much of the 488.2 standard as you actually plan to use - as the
controller, you get to decide what functions you will use, wheras as
the device you could only be fully compliant if you supported all of
the 488.2 commands and queries.

But don't use the 9914, use the TNT4882 which is a more modern part
that needs no external support beyond a crystal or other clock source.

With either chip, I'd pass the 488.2 conversation through the serial
and let software on the PC (easier to develop and modify) handle it.
The only thing I'd want a microcontroller to do would be to handle some
of the hardware signalling of the GPIB - translate certain events to
message that can go through the serial link, or trigger those events
from serial commands intended for the microcontroller rather than to go
over the GPIB.