diff options
Diffstat (limited to 'lib/libgpib/gpib.3')
-rw-r--r-- | lib/libgpib/gpib.3 | 741 |
1 files changed, 0 insertions, 741 deletions
diff --git a/lib/libgpib/gpib.3 b/lib/libgpib/gpib.3 deleted file mode 100644 index 01f778b08be9..000000000000 --- a/lib/libgpib/gpib.3 +++ /dev/null @@ -1,741 +0,0 @@ -.\" Copyright (c) 2010, Joerg Wunsch -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" $FreeBSD$ -.\" -.Dd February 1, 2010 -.Dt GPIB 3 -.Os -.Sh NAME -.\" .Nm ibask , -.\" .Nm ibbna , -.\" .Nm ibcac , -.Nm ibclr , -.\" .Nm ibcmd , -.\" .Nm ibcmda , -.\" .Nm ibconfig , -.Nm ibdev , -.\" .Nm ibdiag , -.Nm ibdma , -.Nm ibeos , -.Nm ibeot , -.\" .Nm ibevent , -.\" .Nm ibfind , -.\" .Nm ibgts , -.\" .Nm ibist , -.\" .Nm iblines , -.\" .Nm ibllo , -.\" .Nm ibln , -.Nm ibloc , -.Nm ibonl , -.Nm ibpad , -.\" .Nm ibpct , -.\" .Nm ibpoke , -.\" .Nm ibppc , -.Nm ibrd , -.\" .Nm ibrda , -.\" .Nm ibrdf , -.\" .Nm ibrdkey , -.\" .Nm ibrpp , -.\" .Nm ibrsc , -.\" .Nm ibrsp , -.\" .Nm ibrsv , -.Nm ibsad , -.\" .Nm ibsgnl , -.Nm ibsic , -.\" .Nm ibsre , -.\" .Nm ibsrq , -.\" .Nm ibstop , -.Nm ibtmo , -.\" .Nm ibtrap , -.Nm ibtrg , -.\" .Nm ibwait , -.Nm ibwrt -.\" .Nm ibwrta , -.\" .Nm ibwrtf , -.\" .Nm ibwrtkey , -.\" .Nm ibxtrc -.Nd "GPIB library" -.Sh LIBRARY -.Lb libgpib -.Sh SYNOPSIS -.In gpib.h -.Pp -.Dv extern int ibcnt , -.Dv iberr , -.Dv ibsta ; -.Pp -.Ft int -.Fn ibask "int handle" "int option" "int *retval" -.Ft int -.Fn ibbna "int handle" "char *bdname" -.Ft int -.Fn ibcac "int handle" "int v" -.Ft int -.Fn ibclr "int handle" -.Ft int -.Fn ibcmd "int handle" "void *buffer" "long cnt" -.Ft int -.Fn ibcmda "int handle" "void *buffer" "long cnt" -.Ft int -.Fn ibconfig "int handle" "int option" "int value" -.Ft int -.Fn ibdev "int boardID" "int pad" "int sad" "int tmo" "int eot" "int eos" -.Ft int -.Fn ibdiag "int handle" "void *buffer" "long cnt" -.Ft int -.Fn ibdma "int handle" "int v" -.Ft int -.Fn ibeos "int handle" "int eos" -.Ft int -.Fn ibeot "int handle" "int eot" -.Ft int -.Fn ibevent "int handle" "short *event" -.Ft int -.Fn ibfind "char *bdname" -.Ft int -.Fn ibgts "int handle" "int v" -.Ft int -.Fn ibist "int handle" "int v" -.Ft int -.Fn iblines "int handle" "short *lines" -.Ft int -.Fn ibllo "int handle" -.Ft int -.Fn ibln "int handle" "int padval" "int sadval" "short *listenflag" -.Ft int -.Fn ibloc "int handle" -.Ft int -.Fn ibonl "int handle" "int v" -.Ft int -.Fn ibpad "int handle" "int pad" -.Ft int -.Fn ibpct "int handle" -.Ft int -.Fn ibpoke "int handle" "int option" "int value" -.Ft int -.Fn ibppc "int handle" "int v" -.Ft int -.Fn ibrd "int handle" "void *buffer" "long cnt" -.Ft int -.Fn ibrda "int handle" "void *buffer" "long cnt" -.Ft int -.Fn ibrdf "int handle" "char *flname" -.Ft int -.Fn ibrdkey "int handle" "void *buffer" "int cnt" -.Ft int -.Fn ibrpp "int handle" "char *ppr" -.Ft int -.Fn ibrsc "int handle" "int v" -.Ft int -.Fn ibrsp "int handle" "char *spr" -.Ft int -.Fn ibrsv "int handle" "int v" -.Ft int -.Fn ibsad "int handle" "int sad" -.Ft int -.Fn ibsgnl "int handle" "int v" -.Ft int -.Fn ibsic "int handle" -.Ft int -.Fn ibsre "int handle" "int v" -.Ft int -.Fn ibsrq "(*func) void)" -.Ft int -.Fn ibstop "int handle" -.Ft int -.Fn ibtmo "int handle" "int tmo" -.Ft int -.Fn ibtrap "int mask" "int mode" -.Ft int -.Fn ibtrg "int handle" -.Ft int -.Fn ibwait "int handle" "int mask" -.Ft int -.Fn ibwrt "int handle" "const void *buffer" "long cnt" -.Ft int -.Fn ibwrta "int handle" "const void *buffer" "long cnt" -.Ft int -.Fn ibwrtf "int handle" "const char *flname" -.Ft int -.Fn ibwrtkey "int handle" "const void *buffer" "int cnt" -.Ft int -.Fn ibxtrc "int handle" "void *buffer" "long cnt" -.Sh DESCRIPTION -The -.Nm -library provides access to the -.Xr gpib 4 -kernel devices. -.Ss Variable Description -The variable -.Dv ibcnt -contains the number of bytes transferred in the most recent call to -.Fn ibcmd , -.Fn ibrd , -or -.Fn ibwrt . -.Pp -The name -.Dv ibcntl -is an alias for -.Dv ibcnt , -provided for backwards compatibility. -.Pp -The variable -.Dv iberr -provides an error code for the most recent library call. -The possible error codes are: -.Pp -.Bl -tag -width 6n -offset indent -compact -.It EDVR -System error -.It ECIC -Not Active Controller -.It ENOL -Nobody listening -.It EADR -Controller not addressed -.It EARG -Invalid argument -.It ESAC -Not System Controller -.It EABO -I/O Aborted/Time out -.It ENEB -No such controller -.It EOIP -Async I/O in progress -.It ECAP -No such capability -.It EFSO -File system error -.It EBUS -Command byte xfer error -.It ESTB -Serial poll status byte lost -.It ESRQ -SRQ line stuck -.It ETAB -Table problem -.El -.Pp -The variable -.Dv ibsta -contains the controller status. -This is an ORed status value, with the following individual bit names: -.Pp -.Bl -tag -width 6n -offset indent -compact -.It ERR -Error -.It TIMO -Timeout -.It END -EOI/EOS -.It SRQI -SRQ -.It RQS -Device requests service -.It SPOLL -Serial Poll -.It EVENT -Event occurred -.It CMPL -I/O complete -.It LOK -Lockout -.It REM -Remote -.It CIC -CIC -.It ATN -ATN -.It TACS -Talker -.It LACS -Listener -.It DTAS -Device trigger status -.It DCAS -Device clear state -.El -.Ss Function Description -The function -.Fn ibdev -is used to open the GPIB device, and establish the parameters to -communicate with a particular bus device. The device is selected -by its primary address -.Fa pad , -a numerical value between 0 and 30, possibly additionally by its -secondary address -.Fa sad , -a numerical value between 96 and 126, or 0 to not use secondary -addressing. -The -.Fa tmo -value specifies the timeout to use when communicating with the device. -This can be any of the constants -.Dv TNONE , -.Dv T10us , -.Dv T30us , -.Dv T100us , -.Dv T300us , -.Dv T1ms , -.Dv T3ms , -.Dv T10ms , -.Dv T30ms , -.Dv T100ms , -.Dv T300ms , -.Dv T1s , -.Dv T3s , -.Dv T10s , -.Dv T30s , -.Dv T100s , -.Dv T300s , -or -.Dv T1000s . -The boolean parameter -.Fa eot -specifies whether the bus signal -.Li EOI -(end-or-identify) should be asserted when sending the last byte of a -message to the device. -Finally, the -.Fa eos -parameter determines whether any special character should be used to -identify the end of a device message when transferring messages on the -bus. -The lower 8 bits of -.Fa eos -are interpreted as an end-of-string character, -.Li EOS . -This character can be ORed with the following values: -.Pp -.Bl -tag -width 6n -compact -offset indent -.It Dv REOS -When receiving a message byte on the bus that matches the -.Li EOS -character, treat it as if the -.Li EOI -signal were asserted, and stop receiving. -.It Dv XEOS -When transmitting a message byte on the bus that matches the -.Li EOS -character, assert the -.Li EOI -bus signal by the same time, and stop sending. -.It Dv BIN -If set, include all 8 bits of the -.Li EOS -character in the comparison; if unset, compare only 7 bit ASCII -values. -.El -.Pp -Passing 0 as -.Fa eos -will turn off any special character treatment, allowing for a fully -8-bit transparent communications channel to the device. -.Pp -The function -.Fn ibfind -is meant to find the -.Em board index -of a board identified by the name -.Fa bdname . -.Em This function is currently not implemented. -.Pp -All remaining functions take the handle returned by calling -.Fn ibdev -as their first argument -.Fa handle . -.Pp -The function -.Fn ibask -is used to query configuration values that have been set with -.Fn ibconfig . -.Em This function is currently not implemented. -.Pp -The function -.Fn ibbna -is meant to change the access board for the given device to -a new one, named -.Fa bdname . -.Em This function is currently not implemented. -.Pp -The function -.Fn ibcac -is used to become the active controller on the bus, by asserting the -.Li ATN -signal line. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibclr -is used to transmit a -.Em Selected Device Clear -command to the device. -.Pp -The function -.Fn ibcmd -is used to directly write -.Fa cnt -GPIB command bytes from a buffer starting at -.Fa buffer -to the device. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibcmda -does the same as -.Fn ibcmd -except it operates asynchronously, so it returns to the caller -immediately. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibconfig -is used to set certain configuration parameters. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibdiag -is obsolete, and not implemented. -.Pp -The function -.Fn ibdma -is used to enable or disable DMA transfers. -Parameter -.Fa v -is a boolean parameter indicating DMA transfers are to be used. -Depending on the hardware and operating system configuration, DMA -transfers might not be available for a particular access board. -.Pp -The function -.Fn ibeos -configures the end-of-string character. -See -.Fn ibdev -for an explanation. -.Pp -The function -.Fn ibeot -configures the assertion of the -.Li EOI -signal line when transmitting the last byte of a message; see -.Fn ibdev -for an explanation. -.Pp -The function -.Fn ibevent -is used to obtain an event from the board's event queue. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibgts -makes the current controller the standby controller, by deasserting -the -.Li ATN -signal line. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibist -sets the individual status bits of the controller to the value -.Fa v . -.Em This function is currently not implemented. -.Pp -The function -.Fn iblines -returns the status of the control and handshake bus lines into the -area pointed to by -.Fa lines . -.Em This function is currently not implemented. -.Pp -The function -.Fn ibllo -is obsolete, and not implemented. -.Pp -The function -.Fn ibln -checks for a listener at the primary address -.Fa padval -and the optional secondary address -.Fa sadval . -If a listener was found, the value pointed to by -.Fa listenflag -will be set to a non-zero value. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibloc -turns the device into local mode. -.Pp -The function -.Fn ibonl -is used to close or reinitialize a device handle. -If parameter -.Fa v -is passed as zero, the handle will be closed, and cannot be used -again. -If it is passed as a non-zero value, all parameters of the handle -will be returned to their defaults; -.Em this functionality is currently unsupported. -.Pp -The function -.Fn ibpad -is used to change the primary address of the device being communicated -with to -.Fa pad . -See -.Fn ibdev -for an explanation. -.Pp -The function -.Fn ibpct -is used to make the device associated with the handle the -controller-in-charge. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibpoke -is obsolete, and not implemented. -.Pp -The function -.Fn ibppc -is used to configure the parallel poll response to -.Fa v . -.Em This function is currently not implemented. -.Pp -The function -.Fn ibrd -is used to receive -.Fa cnt -bytes from the device, and store it to the address passed as -.Fa buffer . -.Pp -The function -.Fn ibrda -behaves similar to -.Fn ibrd -except it operates asynchronously, and returns immediately to the -caller. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibrdf -read data from the device, and appends it to the file with the name -.Fa flname . -.Em This function is currently not implemented. -.Pp -The function -.Fn ibrdkey -is obsolete, and not implemented. -.Pp -The function -.Fn ibrpp -performs a parallel poll, and stores the result at the location -pointed to by -.Fa ppr . -.Em This function is currently not implemented. -.Pp -The function -.Fn ibrsc -makes the board specified by the handle the -.Em system controller -if the argument -.Fa v -is non-zero. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibrsp -conducts a serial poll, and stores the result in the byte pointed -to by -.Fa spr . -.Em This function is currently not implemented. -.Pp -The function -.Fn ibrsv -sets the serial poll response of the board to -.Fa v , -possibly requesting service from the controller if the SRQ bit (0x40) -is set. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibsad -changes the secondary address of the device being communicated with to -.Fa sad . -See -.Fn ibdev -for an explanation. -.Pp -The function -.Fn ibsgnl -is obsolete, and not implemented. -.Pp -The function -.Fn ibsic -asserts the -.Em Interface Clear (IFC) -signal line on the bus for at least 100 microseconds. -This will make all devices attached to the bus to unlisten and untalk. -This function should only be executed on the system controller. -.Pp -The function -.Fn ibsre -asserts the -.Em Remote Enable (REN) -signal line on the bus if argument -.Fa v -is non-zero, or deasserts it otherwise. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibsrq -is obsolete, and not implemented. -.Pp -The function -.Fn ibstop -stops or aborts any asynchronous I/O operation. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibtmo -reconfigures the communication timeout. -See -.Fn ibdev -for an explanation. -.Pp -The function -.Fn ibtrap -is obsolete, and not implemented. -.Pp -The function -.Fn ibtrg -sends a -.Em Group Execute Trigger (GET) -command to the device. -.Pp -The function -.Fn ibwait -waits for a status condition as specified by -.Fa mask . -If -.Fa mask -is given as zero, it returns immediately. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibwrt -is used to send -.Fa cnt -bytes to the device, starting at the address pointed to by -.Fa buffer . -.Pp -The function -.Fn ibwrta -performs the same operation as -.Fn ibwrt -in an asynchronous way, returning immediately to the caller. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibwrtf -opens the file named by -.Fa flname , -and sends its contents to the device. -.Em This function is currently not implemented. -.Pp -The function -.Fn ibwrtkey -is obsolete, and not implemented. -.Pp -The function -.Fn ibxtrc -is obsolete, and not implemented. -.Sh RETURN VALUES -The function -.Fn ibdev -returns a handle to be used for the remaining functions. -Upon failure, -1 is returned. -.Pp -All other functions return the value of the variable -.Dv ibsta . -.Sh DIAGNOSTICS -None. -.Sh COMPATIBILITY -The -.Nm -library tries to be compatible with the Linux GPIB library, -which in turn appears to be compatible with the GPIB library -shipped by National Instruments. -.Sh ERRORS -Errors in the functions above might set -.Dv errno -to one of these values: -.Bl -tag -width Er -.It Bq Er ENOENT -No such file or directory. -.It Bq Er EIO -Input/output error. -.It Bq Er ENXIO -Device not configured. -.It Bq Er E2BIG -Argument list too long. -.It Bq Er ENOMEM -Cannot allocate memory. -.It Bq Er EACCES -Permission denied. -.It Bq Er EFAULT -Bad address. -.It Bq Er EBUSY -Device busy. -.It Bq Er EINVAL -Invalid argument. -.It Bq Er ENFILE -Too many open files in system. -.It Bq Er EMFILE -Too many open files. -.It Bq Er EOPNOTSUPP -Operation not supported. -.El -.Sh SEE ALSO -.Xr gpib 4 -.Sh HISTORY -The -.Nm -library was written by -.An Poul-Henning Kamp -and first appeared in -.Fx 5.4 . -.Sh AUTHORS -This manual page was written by -.An J\(:org Wunsch . -.Sh BUGS -Currently, the library can only handle a single -.Xr gpib 4 -device with instance number 0. -.Pp -Many functions are currently not implemented, see above for details. |