Reference

gpib(4freebsd)

General-Purpose Instrument Bus (GPIB) driver

NAME

gpib – General-Purpose Instrument Bus (GPIB) driver

SYNOPSIS

Either of the pcii(4) or tnt4882(4) drivers use this driver as the backend.

DESCRIPTION

The gpib driver provides support for driving an IEEE-488 bus, also called IEC-625 (or just "IEC bus"), or HP-IB (Hewlett Packard Instrument Bus), or GPIB (General Purpose Instrument Bus). The device can become either a listener, talker, controller, and in particular a master controller on the bus.

Example

The following example code queries the device provided as argv[1] for its identification response.

/* compile with:  cc -O -o ibtest ibtest.c -lgpib */
#include <stdio.h>
#include <stdlib.h>
#include <err.h>
#include <vis.h>
#include <gpib/gpib.h>
int
main(int argc, char **argv)
{
	int dmm;
        unsigned char buf[100];
        char vbuf[sizeof(buf) * 4];
        /* DVM */
        dmm = ibdev(0, (argc > 1? atoi(argv[1]): 7), 0,
		    T10s, 1, 0);
        if (dmm < 0)
                errx(1, "ibdev = %d\n", dmm);
        ibwrt(dmm, "*IDN?\r\n", 7);
        ibrd(dmm, buf, sizeof(buf) - 1);
        strvisx(vbuf, buf, ibcnt, VIS_WHITE | VIS_CSTYLE);
        printf("%s\n", vbuf);
        return (0);
}

FILES

/dev/gpibNib

Main device node to access the driver.

/dev/gpibNl

Listen-only entry to the driver. When opening, an instrument can send data to this device on the bus in an unaddressed mode, for example hard-copy printer data.

SEE ALSO

gpib(3), pcii(4), tnt4882(4)

HISTORY

The gpib driver was written by Poul-Henning Kamp, and first appeared in FreeBSD 5.4.

AUTHORS

This manual page was written by Jörg Wunsch.

History