Home

NI-488.2M Function Reference Manual for Win32

image

Contents

1. IbcEOT Changes the data termination mode for write operations Identical to ibeot Default determined by the GPIB Configuration utility IbcHSCableLength 0 High speed HS488 data transfer is disabled 1 to 15 The number of meters of GPIB cable in your system The GPIB software uses this information to select the appropriate high speed HS488 data transfer mode Default determined by the GPIB Configuration utility Refer to the GPIB User Manual for Win32 for information about high speed HS488 data transfer IbcIst Changes the individual status ist bit of the board Identical to ibist IbcPAD Changes the primary address of the board Identical to ibpad Default determined by the GPIB Configuration utility TbcPP2 zero PP1 mode non zero PP2 mode Default zero Refer to the GPIB User Manual for Win32 for more information about parallel polling IbcPPC Configures the board for parallel polls Identical to board level ibppc Default zero NI 488 2M Function Reference Manual for Win32 1 20 ni com Chapter 1 NI 488 Functions IBCONFIG Table 1 5 ibconfig Board Configuration Parameter Options Continued Options Constants Legal Values IbcPPollTime 0 Use the standard duration 2 us when conducting a parallel poll 1 to 17 Use a variable length duration when conducting a parallel poll The duration represented by 1 to 17 corresponds to the i
2. IBGTS v is non zero and either ATN is low or the interface board is a Talker or a Listener ud is valid but does not refer to an interface board The interface board is not Controller In Charge Either ud is invalid or the GPIB driver is not installed The interface board is not installed or is not properly configured Asynchronous I O is in progress National Instruments Corporation 1 33 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBIST IBIST Board Level Purpose Set or clear the board individual status bit for parallel polls Format C int ibist int ud int v Visual Basic CALL ibist ud v or status ilist ud v Input ud Board descriptor v Indicates whether to set or clear the ist bit Output Function Return The value of ibsta Description ibist sets the interface board ist individual status bit according to v If v is zero the ist bit is cleared if v is non zero the ist bit is set The previous value of the ist bit is returned in iberr For more information about parallel polling refer to the GPIB User Manual for Win32 Possible Errors EARG ud is valid but does not refer to an interface board EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 34 ni com Chapter 1 NI 488
3. ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 2 27 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines SetRWLS SetRWLS Purpose Place devices in Remote With Lockout State Format C void SetRWLS int boardID Addr4882_t addrlist Visual Basic CALL SetRWLS boardID addrlist Input boardID The interface board number addrlist A list of device addresses that is terminated by NOADDR Description SetRWLS places the devices described by addrlist in remote mode by asserting the Remote Enable REN GPIB line Then those devices are placed in lockout state by the Local Lockout LLO GPIB message You cannot program those devices locally until the Controller In Charge releases the Local Lockout by way of the EnableLocal NI 488 2 routine Possible Errors EARG Either an invalid address appears in addrlist or the addrlist is empty ibcnt1 is the index of the invalid address in the addrlist array EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP
4. Solutions Check to see if other devices not used by your application are asserting SRQ Disconnect them from the GPIB if necessary ETAB 20 ETAB occurs only during the FindLstn and FindRQS functions ETAB indicates that there was some problem with a table used by these functions e In the case of FindLstn ETAB means that the given table did not have enough room to hold all the addresses of the Listeners found Inthe case of FindRQS ETAB means that none of the devices in the given table were requesting service Solutions In the case of FindLstn increase the size of result arrays In the case of FindRQS check to see if other devices not used by your application are asserting SRQ Disconnect them from the GPIB if necessary National Instruments Corporation C 9 NI 488 2M Function Reference Manual for Win32 Technical Support and Professional Services Visit the following sections of the National Instruments Web site at ni com for technical support and professional services Support Online technical support resources at ni com support include the following Self Help Resources For immediate answers and solutions visit the award winning National Instruments Web site for software drivers and updates a searchable KnowledgeBase product manuals step by step troubleshooting wizards thousands of example programs tutorials application notes instrument drivers and so on Free Technical Support All regist
5. pad sad tmo eot eos ud or ud ildev BdIndx pad sad tmo eot eoss Input BdIndx Index of the access board for the device pad The primary GPIB address of the device sad The secondary GPIB address of the device tmo The I O timeout value eot EOI mode of the device eos EOS character and modes Output Function Return The device descriptor or a 1 Description 3 ibdev acquires a device descriptor to use in subsequent device level NI 488 functions It opens and initializes a device descriptor and configures it according to the input parameters For more details on the meaning and effect of each input parameter see the corresponding NI 488 functions for ibbna ibpad ibsad ibtmo ibeot and ibeos If ibdev is unable to get a valid device descriptor a 1 is returned the ERR bitis setin ibsta and iberr contains EDVR Note Unit descriptors are allocated on a per process basis so it is not possible to share them between processes If you pass a unit descriptor from one process to a second process all GPIB calls using that descriptor in the second process will return EDVR NI 488 2M Function Reference Manual for Win32 1 24 ni com Chapter 1 NI 488 Functions IBDEV Possible Errors EARG pad sad tmo eot or eos is invalid See ibpad ibsad ibtmo ibeot and ibeos for details on setting these parameters EDVR Either no device descriptors are available or BdIndx refers to a GPIB board that is not insta
6. Output Function Return Description int v ud v Board or device descriptor Indicates whether the board or device is to be taken online or offline The value of ibsta ibon1 resets the board or device and places all its software configuration parameters in their pre configured state In addition if v is zero the device or interface board is taken offline If is non zero the device or interface board is left operational or online If a device or an interface board is taken offline the board or device descriptor ud is no longer valid You must execute an ibdev or ibfind to access the board or device again Possible Errors EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured National Instruments Corporation 1 45 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBPAD IBPAD Board Level Device Level Purpose Change the primary address Format C int ibpad int ud int v Visual Basic CALL ibpad ud v or status ilpad ud v Input ud Board or device descriptor v GPIB primary address Output Function Return The value of ibsta Description ibpad sets the primary GPIB address of the board or device to v an integer ranging from 0 to 30 If no error occurs during the call then iberr contains the previous GPIB primary address Possible Errors EARG v is not a valid pr
7. PassControl PassControl Purpose Pass control to another device with Controller capability Format C void PassControl int boardID Addr4882_t address Visual Basic CALL PassControl boardID address Input boardID The interface board number address Address of the device to which you want to pass control Description PassControl sends the Take Control TCT GPIB message to the device described by address The device becomes Controller In Charge and the interface board is no longer CIC Possible Errors EARG The address parameter is invalid It must be a valid primary secondary address pair It cannot be the constant NOADDR EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 2 11 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines PPoll PPoll Purpose Perform a parallel poll on the GPIB Format C void PPoll int boardID short result Visual Basic CALL PPoll boardID result Input boardID The interface board number Output result The parallel poll result Description PPo11 conducts a parallel poll and the result is placed in result Each of the eight bits of result represents the statu
8. dev brd LOK brd CMPL indicates the condition of I O operations It is set whenever an T O operation is complete CMPL is cleared while the I O operation is in progress LOK indicates whether the board is in a lockout state While LOK is set the EnableLocal routine or ibloc function is inoperative for that board LOK is set whenever the GPIB board detects that the Local Lockout LLO message has been sent either by the GPIB board or by another Controller LOK is cleared when the System Controller unasserts the Remote Enable REN GPIB line National Instruments Corporation B 3 NI 488 2M Function Reference Manual for Win32 Appendix B Status Word Conditions REM brd CIC brd REM indicates whether or not the board is in the remote state REM is set whenever the Remote Enable REN GPIB line is asserted and the GPIB board detects that its listen address has been sent either by the GPIB board or by another Controller REM is cleared in the following situations When REN becomes unasserted When the GPIB board as a Listener detects that the Go to Local GTL command has been sent either by the GPIB board or by another Controller When the ibloc function is called while the LOK bit is cleared in the status word ATN brd CIC indicates whether the GPIB board is the Controller In Charge CIC is set when the SendIFC routine or ibsic function is executed either while the GPIB board is System Controller o
9. 1 23 IbcSRE configuration option 1 21 IbcTIMING configuration option 1 21 IbcTMO configuration option board level 1 21 NI 488 2M Function Reference Manual for Win32 device level 1 23 IbcUnAddr configuration option 1 23 IbcWriteAdjust configuration option board level 1 21 device level 1 23 IBDEV function 1 24 to 1 25 IBDMA function 1 26 IBEOS function 1 27 to 1 28 IBEOT function 1 29 IBFIND function 1 30 to 1 31 IBGTS function 1 32 to 1 33 IBIST function 1 34 IBLINES function 1 35 to 1 36 IBLN function 1 37 to 1 38 IBLOC function 1 39 to 1 40 IBNOTIFY function 1 41 to 1 44 IBONL function 1 45 IBPAD function 1 46 IBPCT function 1 47 IBPPC function 1 48 to 1 49 IBRD function 1 50 to 1 51 IBRDA function 1 52 to 1 53 IBRDF function 1 54 to 1 55 IBRPP function 1 56 IBRSC function 1 57 IBRSP function 1 58 to 1 59 IBRSV function 1 60 IBSAD function 1 61 IBSIC function 1 62 IBSRE function 1 63 ibsta status word See status word conditions IBSTOP function 1 64 IBTMO function 1 65 to 1 66 IBTRG function 1 67 IBWAIT function 1 68 to 1 69 IBWRT function 1 70 to 1 71 IBWRTA function 1 72 to 1 73 IBWRTEF function 1 74 to 1 75 NI 488 2M Function Reference Manual for Win32 1 4 instrument drivers NI resources D 1 interface clear functions and routines IBSIC 1 62 SendIFC 2 24 K KnowledgeBase D 1 L LACS status word condition B 5 listeners finding FindLstn routine 2 9 IB
10. 3 ETX 23 35 MLA3 04 4 EOT SDC 24 36 MLA4 05 5 ENQ PPC 25 37 MLAS 06 6 ACK 26 38 amp MLA6 07 7 BEL 27 39 i MLA7 08 8 BS GET 28 40 MLA8 09 9 HT TCT 29 41 MLA9 0A 10 LF 2A 42 MLA10 0B 11 VT 2B 43 MLA11 0C 12 FF 2C 44 A MLA12 0D 13 CR 2D 45 MLA13 OE 14 so 2E 46 MLA 14 OF 15 SI 2F 47 MLA15 10 16 DLE 30 48 0 MLA16 11 17 DC1 LLO 31 49 1 MLA17 12 18 DC2 32 50 2 MLA18 13 19 DC3 33 51 3 MLA19 14 20 DC4 DCL 34 52 4 MLA20 15 21 NAK PPU 35 53 5 MLA21 16 22 SYN 36 54 6 MLA22 17 23 ETB 37 55 7 MLA23 18 24 CAN SPE 38 56 8 MLA24 19 23 EM SPD 39 57 9 MLA25 1A 26 SUB 3A 58 MLA26 1B 27 ESC 3B 59 7 MLA27 1C 28 FS 3C 60 lt MLA28 1D 29 GS 3D 61 MLA29 1E 30 RS 3E 62 gt MLA30 1F 31 US CFE 3F 63 UNL NI 488 2M Function Reference Manual for Win32 A 2 ni com Appendix A Multiline Interface Messages Table A 1 Multiline Interface Messages Continued Hex Dec ASCII Msg Hex Dec ASCII Msg 40 64 MTAO 60 96 MSAO PPE 41 65 A MTA1 61 97 a MSA1 PPE CFG1 42 66 B MTA2 62 98 b MSA2 PPE CFG2 43 67 C MTA3 63 99 c MSA3 PPE CFG3 44 68 D MTA4 64 100 d MSA4 PPE CFG4 45 69 E MTAS 65 101 e MSAS PPE CFG5 46 70 F MTA6 66 102 f MSA6 PPE CFG6 47 71 G MTA7 67 103 g MSA7 PPE CFG7 48 72 H MTA8 68 104 h MSA8 PPE CF
11. 34 wait mask layout table 1 69 WaitSRQ routine 2 34 Web resources D 1 write functions IBWRT 1 70 to 1 71 IBWRTA 1 72 to 1 73 IBWRTE 1 74 to 1 75 NI 488 2M Function Reference Manual for Win32
12. CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 Either ud is invalid or the GPIB driver is not installed The interface board is not installed or is not properly configured Asynchronous I O is in progress National Instruments Corporation 1 49 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBRD IBRD Board Level Device Level Purpose Read data from a device into a user buffer Format C int ibrd int ud void rdbuf long count Visual Basic CALL ibrd ud rdbufs or status ilrd ud rdbuf count amp Input ud Board or device descriptor count Number of bytes to be read from the GPIB Output rdbuf Address of buffer into which data is read Function Return The value of ibsta Description Device Level If ud is a device descriptor ibrd addresses the GPIB reads up to count bytes of data and places the data into the buffer specified by rdbuf The operation terminates normally when count bytes have been received or END is received The operation terminates with an error if the transfer could not complete within the timeout period The actual number of bytes transferred is returned in the global variable ibent1 Board Level If ud is a board descriptor ibrd reads up to count bytes of data and places the data into the buffer specified by rdbuf A board level ibrd assumes that the GPI
13. Functions IBLINES Board Level Purpose Return the status of the eight GPIB control lines Format C int iblines int ud short clines Visual Basic CALL iblines ud clines or status illines ud clines Input ud Board descriptor Output clines Returns GPIB control line state information Function Return The value of ibsta Description iblines returns the state of the GPIB control lines in clines The low order byte bits 0 through 7 of clines contains a mask indicating the capability of the GPIB interface board to sense the status of each GPIB control line The upper byte bits 8 through 15 contains the GPIB control line state information The following is a pattern of each byte 7 6 3 4 3 2 EOI ATN SRQ REN IFC NRFD NDAC DAV To determine if a GPIB control line is asserted first check the appropriate bit in the lower byte to determine if the line can be monitored If the line can be monitored indicated by a 1 in the appropriate bit position then check the corresponding bit in the upper byte If the bit is set 1 the corresponding control line is asserted If the bit is clear 0 the control line is unasserted National Instruments Corporation 1 35 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBLINES Example short lines iblines ud amp lines if lines amp ValidREN check to see if REN is asserted if lines amp BusREN
14. GPIB User Manual for Win32 for more information about device level calls and bus management IbaDMA zero The board does not use DMA for GPIB transfers non zero The board does use DMA for GPIB transfers See ibdma Ibal EndBitIsNormal zero The END bit of ibsta is set only when EOI or EOI plus the EOS character is received If the EOS character is received without EOI the END bit is not set non zero The END bit is set whenever EOI EOS or EOI plus EOS is received Ibal EOSchar The current EOS character of the board See ibeos NI 488 2M Function Reference Manual for Win32 1 6 ni com Chapter 1 NI 488 Functions IBASK Table 1 3 ibask Board Configuration Parameter Options Continued Options Constants Returned Information TbaEOScmp zero A 7 bit compare is used for all EOS comparisons non zero An 8 bit compare is be used for all EOS comparisons See ibeos TbaEOSrd zero The EOS character is ignored during read operations non zero Read operation is terminated by the EOS character See ibeos TbaEOSwrt zero The EOI line is not asserted when the EOS character is sent during a write operation non zero The EOI line is asserted when the EOS character is sent during a write operation See ibeos IbaEOT zero The GPIB EOI line is not asserted at the end of a write operation non zero EOI is asserted at the end o
15. Manual for Win32 NI 488 2M Function Reference Manual for Win32 1 58 ni com Chapter 1 NI 488 Functions IBRSP EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress ESTB Autopolling is enabled and the serial poll queue of the device has overflowed Call ibrsp more often to keep the queue from overflowing National Instruments Corporation 1 59 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBRSV IBRSV Board Level Purpose Request service and change the serial poll status byte Format C int ibrsv int ud int v Visual Basic CALL ibrsv ud v or status ilrsv ud v Input ud Board descriptor v Serial poll status byte Output Function Return The value of ibsta Description ibrsv is used to request service from the Controller and to provide the Controller with an application dependent status byte when the Controller serial polls the GPIB board The value v is the status byte that the GPIB board returns when serial polled by the Controller In Charge If bit 6 hex 40 is set in v the GPIB board requests service from the Controller by asserting the GPIB SRQ line When ibrsvis called and an error does not occur the previous status byte is returned in iberr Possible Errors EARG ud is a valid descriptor but does not refer to a board EDVR Either u
16. NI 488 2 routines RQS status word condition B 3 S Send routine 2 21 SendCmds routine 2 22 SendDataBytes routine 2 23 SendIFC routine 2 24 SendList routine 2 25 SendLLO routine 2 26 SendSetup routine 2 27 NI 488 2M Function Reference Manual for Win32 1 6 serial polling functions and routines AllSpoll 2 4 IBRSP 1 58 to 1 59 IBRSV 1 60 ReadStatusByte 2 17 service request routines FindRQS 2 10 TestSRQ 2 29 SetRWLS routine 2 28 software NI resources D 1 SRQ functions and routines TestSRQ 2 29 WaitSRQ 2 34 SRQI status word condition B 3 status word conditions ATN B 4 CIC B 4 CMPL B 3 DCAS B 5 DTAS B 5 END B 2 ERR B 2 ibsta status word layout table B 1 LACS B 5 LOK B 3 REM B 4 RQS B 3 SRQI B 3 TACS B 4 TIMO B 2 support technical D 1 T TACS status word condition B 4 technical support D 1 TestSRQ routine 2 29 TestSys routine 2 30 to 2 31 ThreadIbent function 3 3 National Instruments Corporation ThreadIbcntl function 3 4 ThreadIberr function 3 5 ThreadIbsta function 3 6 timeout code values table 1 65 to 1 66 TIMO status word condition B 2 training and certification NI resources D 1 trigger functions and routines IBTRG 1 67 Trigger 2 32 TriggerList 2 33 Trigger routine 2 32 TriggerList routine 2 33 troubleshooting NI resources D 1 National Instruments Corporation W wait functions and routines IBWAIT 1 68 to 1 69 WaitSRQ 2
17. NOADDR Output resultlist A list of test results each entry corresponds to an address in addrlist Description TestSys sends the TST message to the IEEE 488 2 compliant devices described by addrlist The TST message instructs them to conduct their self test procedures A 16 bit test result code is read from each device and stored in resultlist A test result of 0 n indicates that the device passed its self test Refer to the manual that came with the device to determine the meaning of the failure code Any other value indicates that the device failed its self test If the function returns without an error that is the ERR bit is not set in ibsta ibcnt1 contains the number of devices that failed Otherwise the meaning of ibcnt1 depends on the error returned If a device fails to send a response before the timeout period expires a test result of 1 is reported for it and the error EABO is returned Possible Errors EABO The interface board timed out before receiving a result from a device ibcnt1 contains the index of the timed out device 1 is stored as the test result for the timed out device EARG Either an invalid address appears in addrlist or the addrlist is empty ibcnt1 is the index of the invalid address in the addrlist array EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed NI 488 2M Fu
18. Technical Support and Professional Services Contents DEN erica as ltda 2 21 Send Cm ini a eave 2 22 SendDataBytos it 2 23 SEMEN a Sate ae Bae ee ge 2 24 edi t eia ias 2 25 SendL EO uri Ai a ee 2 26 S Eata RTEA pd AI iris 2 27 SetRWES ii 2 28 TEASRO id e tee es 2 29 A RS 2 30 O 2 32 A A O 2 33 WalfSRQisica cia ci id 2 34 Chapter 3 Functions for Multithreaded Applications Function Names cines 3 1 PULPOSC 2 soos sassecesby dd tdi 3 1 Format a E E eee Sivas de TEROA eet ee ave vat eae eet ee 3 1 Input and OUtpltio ii eet eee ees eee epee nets 3 1 Descrip ti Es 3 1 Lest OF FUNCION it i 3 2 Thread bent it oia 3 3 Thread ll vii ada ia 3 4 Thread lr ta 3 5 Threadibstarr dades audios iio tel T EET 3 6 Appendix A O National Instruments Corporation vii NI 488 2M Function Reference Manual for Win32 Contents Glossary Index Tables Table 1 1 NI 488 Device Level Functions 0 0 cece eee eseeeeeeseeeeeeseeeseeaeeeeeeaeens 1 2 Table 1 2 NI 488 Board Level Functions ooooocnocnnononancnnnonncanonanonnconncancnnccnnccnnons 1 3 Table 1 3 ibask Board Configuration Parameter Options 0 eee eee eee 1 7 Table 1 4 ibask Device Configuration Parameter Options 0 0 0 0 cece eeeeeeeee 1 10 Table 1 5 ibconfig Board Configuration Parameter Options 0 0 00 eee 1 21 Table 1 6 ibconfig Device Configuration Parameter Options eee 1 24 Table 1 7 EOS Configurations iseina cek clots ccontessee dese eds nv saaan 1 30 Table 1
19. always performed before a device level read or write Default determined by the GPIB Configuration utility NI 488 2M Function Reference Manual for Win32 1 22 ni com Chapter 1 NI 488 Functions IBCONFIG Table 1 6 ibconfig Device Configuration Parameter Options Continued Options Constants Legal Values IbcSAD Changes the secondary address of the device Identical to ibsad Default determined by the GPIB Configuration utility IbcSPollTime 0 to 17 Sets the length of time the driver waits for a serial poll response byte when polling the given device The length of time represented by 0 to 17 corresponds to the ibtmo values Default 11 IbcTMO Changes the device timeout period Identical to ibtmo Default determined by the GPIB Configuration utility TbcUnAddr zero Do not send Untalk and Unlisten UNT and UNL at the end of device level reads and writes non zero Send UNT and UNL at the end of device level reads and writes Default zero IbcWriteAdjust 0 No byte swapping 1 Swap pairs of bytes during a write Default zero National Instruments Corporation 1 23 NI 488 2M Function Reference Manual for Win32 Chapter 1 IBDEV NI 488 Functions IBDEV Device Level Purpose Format Open and initialize a device descriptor C int ibdev int BdIndx int pad int sad int tmo int eot int eos Visual Basic CALL ibdev BdIndx
20. base I O address BIOS board level function National Instruments Corporation G 1 Listeners use this GPIB interface function to receive data and all devices use it to receive commands See also source handshake and handshake The GPIB board that controls and communicates with the devices on the bus that are attached to it American National Standards Institute American Standard Code for Information Interchange An action or event that occurs at an unpredictable time with respect to the execution of a program A feature of the GPIB software in which serial polls are executed automatically by the driver whenever a device asserts the GPIB SRQ line See 1 O address Basic Input Output System A rudimentary function that performs a single operation NI 488 2M Function Reference Manual for Win32 Glossary C CFE Configuration Enable CFGn CIC Controller In Charge CPU D DAV Data Valid DCL Device Clear device level function DIO1 through DIO8 DLL DMA direct memory access driver NI 488 2M Function Reference Manual for Win32 G 2 The GPIB command which precedes CFGn and is used to place devices into their configuration mode These GPIB commands CFG1 through CFG15 follow CFE and are used to configure all devices for the number of meters of cable in the system so that HS488 transfers occur without errors The device that manages the GPIB by sending interface messages to other device
21. board only REM 6 40 GPIB board is in Remote State board only CIC 5 20 GPIB board is CIC board only ATN 4 10 Attention is asserted board only TACS 3 8 GPIB board is Talker board only LACS 2 4 GPIB board is Listener board only DTAS 1 2 GPIB board is in Device Trigger State board only DCAS 0 1 GPIB board is in Device Clear State board only Possible Errors EARG The bit set in mask is invalid EBUS Device level No devices are connected to the GPIB ECIC Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured ESRQ Device level If RQS is set in the wait mask then ESRQ indicates that the Stuck SRQ condition exists For more information about serial polling refer to the GPIB User Manual for Win32 National Instruments Corporation 1 69 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBWRT IBWRT Board Level Device Level Purpose Format Write data to a device from a user buffer C int ibwrt int ud void wrtbuf long count Visual Basic CALL ibwrt ud wrtbuf or status ilwrt ud wrtbuf count amp Input ud Board or device descriptor wrtbuf Address of the buffer containing the bytes to w
22. calls If your application performs GPIB operations in multiple threads your application should examine the thread GPIB status variables using ThreadIbsta ThreadIberr ThreadIbcnt and ThreadIbcnt1 instead of the global GPIB status variables O National Instruments Corporation 3 3 NI 488 2M Function Reference Manual for Win32 Chapter 3 Functions for Multithreaded Applications Threadlbcntl Threadibcntl Purpose Return the value of the thread specific ibent1 Format C long ThreadIbcntl Visual Basic rc amp ThreadIbcntl Input none No input parameters Output Function Return Value of ibcnt1 for the calling thread Description ThreadIbcnt1 returns the current value of ibcnt1 for a particular thread of execution The global GPIB status variables ibsta iberr ibcnt ibcnt1 are maintained on a per process basis which means that their values are updated whenever any thread in that process makes GPIB calls The thread GPIB status variables are maintained on a per thread basis which means that their values are updated whenever that particular thread makes GPIB calls If your application performs GPIB operations in multiple threads your application should examine the thread GPIB status variables using ThreadIbsta ThreadIberr ThreadIbcnt and ThreadIbcnt1 instead of the global GPIB status variables NI 488 2M Function Reference Manual for Win32 3 4 ni com Chapter 3 Functions for Multithreaded Applications Threa
23. for a board or user configured device this board or device descriptor can be used in subsequent NI 488 functions ibfind performs the equivalent of an ibon1 1 to initialize the board or device descriptor The unit descriptor returned by ibfind remains valid until the board or device is put offline using ibonl 0 If ibfind is unable to get a valid descriptor a 1 is returned the ERR bit is set in ibsta and iberr contains EDVR 3 Note Unit descriptors are allocated on a per process basis so it is not possible to share them between processes If you pass a unit descriptor from one process to a second process all GPIB calls using that descriptor in the second process will return EDVR NI 488 2M Function Reference Manual for Win32 1 30 ni com Chapter 1 NI 488 Functions IBFIND B Note Using ibfind to obtain device descriptors is useful only for compatibility with existing applications New applications should use ibdev instead of ibfind ibdev is more flexible easier to use and frees the application from unnecessary device name requirements Possible Errors EBUS Device level No devices are connected to the GPIB ECIC Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 EDVR Either udname is not recognized as a board or device name or the GPIB driver is not installed ENEB The interface board is not installed
24. from wrtbuf to a GPIB device A board level ibwrta assumes that the GPIB is already properly addressed The operation terminates normally when count bytes have been sent The operation terminates with an error if the board is not the CIC and the CIC sends a Device Clear on the GPIB The actual number of bytes transferred is returned in the global variable ibentl NI 488 2M Function Reference Manual for Win32 1 72 ni com Chapter 1 NI 488 Functions IBWRTA Board and Device Level The asynchronous I O calls ibcmda ibrda ibwrta are designed so that applications can perform other non GPIB operations with the I O in progress Once the asynchronous I O begins further GPIB calls are strictly limited Any calls that would interfere with the I O in progress are not allowed the driver returns EOIP in this case Once the I O is complete the application must resynchronize with the GPIB driver Resynchronization is accomplished by using one of the following functions ibnotify ibwait ibstop ibonl Possible Errors EABO EADR EBUS ECIC EDVR ENEB ENOL EOIP If the ibsta value passed to the ibnotify callback contains CMPL then the driver and application are resynchronized If the returned ibsta contains CMPL then the driver and application are resynchronized The I O is canceled the driver and application are resynchronized The I O is canceled and the interface is reset the driver and application are resynchronized Bo
25. mask Input ud Board or device descriptor mask Bit mask of GPIB events to wait for Output Function Return The value of ibsta Description ibwait monitors the events specified by mask and delays processing until one or more of the events occurs If the wait mask is zero ibwait returns immediately with the updated ibsta status word If TIMO is set in the wait mask ibwait returns when the timeout period has elapsed if one or more of the other specified events have not already occurred If TIMO is not set in the wait mask then the function waits indefinitely for one or more of the specified events to occur The existing ibwait mask bits are identical to the ibsta bits and are described in Table 1 10 If ud is a device descriptor the only valid wait mask bits are TIMO END RQS and CMPL If ud is a board descriptor all wait mask bits are valid except for RQS You can configure the timeout period using the ibtmo function NI 488 2M Function Reference Manual for Win32 1 68 ni com Chapter 1 NI 488 Functions IBWAIT Table 1 10 Wait Mask Layout Bit Hex Mnemonic Position Value Description TIMO 14 4000 Use the timeout period see ibtmo to limit the notify period END 13 2000 END or EOS is detected SRQI 12 1000 SRQ is asserted board only ROS 11 800 Device requested service device only CMPL 8 100 I O completed LOK 7 80 GPIB board is in Lockout State
26. not installed The interface board is not installed or is not properly configured Asynchronous I O is in progress National Instruments Corporation 1 53 NI 488 2M Function Reference Manual for Win32 Chapter 1 IBRDF NI 488 Functions IBRDF Board Level Device Level Purpose Format Read data from a device into a file C int ibrdf int ud char flname Visual Basic CALL ibrdf ud flnames or status ilrdf ud flnames Input ud Board or device descriptor flname Name of file into which data is read Output Function Return The value of ibsta Description Device Level NI 488 2M If ud is a device descriptor ibraf addresses the GPIB reads data from a GPIB device and places the data into the file specified by 1name The operation terminates normally when END is received The operation terminates with an error if the transfer could not complete within the timeout period The actual number of bytes transferred is returned in the global variable ibent1 Board Level If ud is a board descriptor ibrdf reads data from a GPIB device and places the data into the file specified by flname A board level ibrdf assumes that the GPIB is already properly addressed The operation terminates normally when END is received The operation terminates with an error if the transfer could not complete within the timeout period or if the board is not CIC the CIC sends a Device Clear on the GPIB The actual number o
27. of the bytes could not be sent within the timeout period The actual number of bytes transferred is returned in the global variable ibentl Board Level If ud is a board descriptor ibwrt writes all of the bytes of data from the file lname to a GPIB device A board level ibwrtf assumes that the GPIB is already properly addressed The operation terminates normally when all of the bytes have been sent The operation terminates with an error if all of the bytes could not be sent within the timeout period or if the board is not CIC the CIC sends a Device Clear on the GPIB The actual number of bytes transferred is returned in the global variable ibent1 NI 488 2M Function Reference Manual for Win32 1 74 ni com Possible Errors EABO EADR EBUS ECIC EDVR EFSO ENEB EOIP Chapter 1 NI 488 Functions IBWRTF Either the file could not be transferred within the timeout period or a Device Clear message was received after the write operation began Board level The GPIB is not correctly addressed use ibcmd to address the GPIB Device level A conflict exists between the device GPIB address and the GPIB address of the device access board Use ibpad and ibsad Device level No devices are connected to the GPIB Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 Either ud is invalid or the GPIB driver i
28. or a device index An alphabetical list of the option constants follows IbcEOSchar TbcEOScmp IbcEOSrd IbcEOSwrt IbcEOT IbcPAD IbcREADDR IbcReadAdjust 7 IbcSAD IbcSPollTime IbcTMO IbcUnAddr TbcWriteAdjust Table 1 6 ibconfig Device Configuration Parameter Options Options Constants Legal Values IbcEOSchar Any 8 bit value This byte becomes the new EOS character Default determined by the GPIB Configuration utility IbcEOScmp zero Use seven bits for the EOS character comparison non zero Use eight bits for the EOS character comparison Default determined by the GPIB Configuration utility IbcEOSrd non zero Terminate reads when the EOS character is read Default determined by the GPIB Configuration utility IbcEOSwrt zero Do not send EOI with the EOS character during write operations non zero Send EOI with the EOS character during writes Default determined by the GPIB Configuration utility IbcEOT Changes the data termination method for writes Identical to ibeot Default determined by the GPIB Configuration utility IbcPAD Changes the primary address of the device Identical to ibpad Default determined by the GPIB Configuration utility IbcReadAdjust 0 No byte swapping 1 Swap pairs of bytes during a read Default zero IbcREADDR zero No unnecessary readdressing is performed between device level reads and writes non zero Addressing is
29. poll status byte of the board IbaSAD The current secondary address of the board See ibsad Ibasc zero The board is not the GPIB System Controller non zero The board is the System Controller See ibrsc IbaSendLLO zero The GPIB LLO command is not sent when a device is put online ibfind or ibdev non zero The LLO command is sent IbaSRE zero The board does not automatically assert the GPIB REN line when it becomes the System Controller non zero The board automatically asserts REN when it becomes the System Controller See ibrsc and ibsre IbaTIMING The current bus timing of the board 1 Normal timing T1 delay of 2 us 2 High speed timing T1 delay of 500 ns 3 Very high speed timing T1 delay of 350 ns IbaTMO The current timeout period of the board See ibtmo IbaWriteAdjust 0 Write operations do not have pairs of bytes swapped 1 Write operations do have each pair of bytes swapped NI 488 2M Function Reference Manual for Win32 1 8 ni com Chapter 1 NI 488 Functions IBASK Table 1 4 lists the options you can use with ibask when ud is a device descriptor or a device index An alphabetical list of the option constants follows TbaBNA IbaEOSchar TbaEOScmp IbaEOSrd IbaEOSwrt TbaEOT IbaPAD TbaReadAdjust 2 TbaREADDR IbaSAD IbaSPollTime IbaTMO IbaUnAddr TbaWriteAdjust Table 1 4 ibask Device Configuration Parameter Options Opt
30. the interface board listen active This call is usually followed by a call to RcvRespMsg to transfer data from the device to the interface board This routine is particularly useful to make multiple calls to RcvRespMsg it eliminates the need to readdress the device to receive every block of data Possible Errors EARG The address parameter is invalid EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 2 19 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines ResetSys ResetSys Purpose Reset and initialize IEEE 488 2 compliant devices Format C void ResetSys int boardID Addr4882_t addrlist Visual Basic CALL ResetSys boardID addrlist Input boardID The interface board number addrlist A list of device addresses that is terminated by NOADDR Description The reset and initialization take place in three steps The first step resets the GPIB by asserting the Remote Enable REN line and then the Interface Clear IFC line The second step clears all of the devices by sending the Universal Device Clear DCL GPIB message The final step causes IEEE 488 2 compliant devices to perform device specific reset and initializati
31. used to configure an addressed Listener to participate in polls Parallel Poll Disable is the GPIB command used to disable a configured device from participating in polls There are 16 PPD commands Parallel Poll Enable is the GPIB command used to enable a configured device to participate in polls and to assign a DIO response line There are 16 PPE commands Parallel Poll Unconfigure is the GPIB command used to disable used to disable any device from participating in polls Low speed data transfer between the GPIB board and memory in which the CPU moves each data byte according to program instructions See also DMA Random access memory The GPIB software and the user application must resynchronize after asynchronous I O operations have completed Request Service NI 488 2M Function Reference Manual for Win32 G 6 ni com S S SDC Selected Device Clear serial poll service request source handshake SPD Serial Poll Disable SPE Serial Poll Enable SRQ Service Request status byte status word synchronous System Controller Glossary Seconds The GPIB command used to reset internal or device functions of an addressed Listener See also DCL The process of polling and reading the status byte of one device at a time See also parallel poll See also SRQ The GPIB interface function that transmits data and commands Talkers use this function to send data and the Controller uses it to send commands
32. 1000s 17 1000 s Possible Errors EARG EDVR ENEB EOIP v is invalid Either ud is invalid or the GPIB driver is not installed The interface board is not installed or is not properly configured Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 66 ni com Chapter 1 NI 488 Functions IBTRG IBTRG Device Level Purpose Trigger selected device Format C int ibtrg int ud Visual Basic CALL ibtrg ud or status iltrg ud Input ud Device descriptor Output Function Return The value of ibsta Description ibtrg sends the Group Execute Trigger GET message to the device described by ud Possible Errors EARG ud is a valid descriptor but does not refer to a device EBUS No devices are connected to the GPIB ECIC The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 1 67 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBWAIT IBWAIT Board Level Device Level Purpose Wait for GPIB events Format C int ibwait int ud int mask Visual Basic CALL ibwait ud mask3 or status ilwait ud
33. 4882_t padlist Addr4882_t resultlist int limit Visual Basic CALL FindLstn boardID padlist resultlist limit Input boardID The interface board number padlist A list of primary addresses that is terminated by NOADDR limit Total number of entries that can be placed in resultlist Output resultlist Addresses of all listening devices found by FindLstn are placed in this array Description FindLstn tests all of the primary addresses in padlist as follows If a device is present at a primary address given in padlist then the primary address is stored in resultlist Otherwise all secondary addresses of the primary address are tested and the addresses of any devices found are stored in resultlist No more than limit addresses are stored in resultlist ibcnt1 contains the actual number of addresses stored in resultlist Possible Errors EARG An invalid primary address appears in padlist ibcnt1 is the index of the invalid address in the padlist array EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress ETAB The number of devices found on the GPIB exceed limit National Instruments Corporation 2 9 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines Find
34. 8 Notify Mask Layouts ic0 2 asisecasee saci oia 1 44 Table 1 9 Timeout Code Valles vicurniocin ind ated a e ae 1 67 Table 1 10 Wait Mask LayOUt oconccnnnnnnnnonnnonconnnoncnncnnononnnncnnc non cnn non ccnn cnn ncnn conca cnn 1 71 Table 2 1 NI488 2 RoUtiMeS sitas 2 2 Table 3 1 Functions for Multithreaded Applications ooconncnncnnccnooncnncnnnnanoraninnnn 3 2 Table A 1 Multiline Interface Messages ceseescceseessnceeseeeseeeeeeesseceeeesaeeneeenees A 2 NI 488 2M Function Reference Manual for Win32 viii ni com About This Manual This manual describes the NI 488 functions and NI 488 2 routines of the GPIB software The GPIB software for Windows 95 98 is meant to be used with Windows 95 or Windows 98 The GPIB software for Windows NT is meant to be used with Windows NT version 4 0 or later and the Microsoft Windows NT Advanced Server version 4 0 or later This manual assumes that you are already familiar with the Win32 system you are using How to Use The Manual Set Ttt Getting Started Manual Installation and Configuration a Novice Experienced Users Users We SSS a GPIB User Manual NI 488 2M Function Function for Win32 Reference Manual and Routine for Win32 Descriptions Application Development and Examples JH Use the getting started manual to install and configure your GPIB hardware and GPIB software
35. Asynchronous I O is in progress ESAC The interface board is not configured as System Controller NI 488 2M Function Reference Manual for Win32 2 28 ni com Chapter 2 NI 488 2 Routines TestSRQ TestSRQ Purpose Determine the current state of the GPIB Service Request SRQ line Format C void TestSRQ int boardID short result Visual Basic CALL TestSRQ boardID result Input boardID The interface board number Output result State of the SRQ line non zero if the line is asserted zero if the line is not asserted Description TestSRQ returns the current state of the GPIB SRQ line in result If SRQ is asserted then result contains a non zero value Otherwise result contains a zero Use Test SRQ to get the current state of the GPIB SRQ line Use Wait SRQ to wait until SRQ is asserted Possible Errors EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 2 29 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines TestSys TestSys Purpose Cause IEEE 488 2 compliant devices to conduct self tests Format C void TestSys int boardID Addr4882_t addrlist short resultlist Visual Basic CALL TestSys boardID addrlist resultlist Input boardID The interface board number addrlist A list of device addresses terminated by
36. B is already properly addressed The operation terminates normally when count bytes have been received or END is received The operation terminates with an error if the transfer could not complete within the timeout period or if the board is not CIC the CIC sends a Device Clear on the GPIB The actual number of bytes transferred is returned in the global variable ibent1 NI 488 2M Function Reference Manual for Win32 1 50 ni com Possible Errors EABO EADR EBUS ECIC EDVR ENEB EOIP Chapter 1 NI 488 Functions IBRD Either count bytes or END was not received within the timeout period or a Device Clear message was received after the read operation began Board level The GPIB is not correctly addressed use ibcmd to address the GPIB Device level A conflict exists between the device GPIB address and the GPIB address of the device access board Use ibpad and ibsad Device level No devices are connected to the GPIB Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 Either ud is invalid or the GPIB driver is not installed The interface board is not installed or is not properly configured Asynchronous I O is in progress National Instruments Corporation 1 51 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBRDA IBRDA Board Level Device Level Purpose R
37. BTMO Purpose Change or disable the timeout period Format C int ibtmo int ud int v Visual Basic CALL ibtmo ud v or status iltmo ud v Input ud v Timeout duration code Output Function Return The value of ibsta Description Board or device descriptor ibtmo sets the timeout period of the board or device to v The timeout period is used to select the maximum duration allowed for a synchronous I O operation for example ibra and ibwrt or for an ibwait or ibnotify operation with TIMO in the wait mask If the operation does not complete before the timeout period elapses then the operation is aborted and TIMO is returned in ibsta Refer to Table 1 9 for a list of valid timeout values These timeout values represent the minimum timeout period The actual period may be longer Table 1 9 Timeout Code Values Constant Value of v Minimum Timeout TNONE 0 disable no timeout T10us 1 10 us T30us 2 30 us T100us 3 100 us National Instruments Corporation 1 65 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBTMO Table 1 9 Timeout Code Values Continued Constant Value of v Minimum Timeout T300us 4 300 us Tims 3 1 ms T3ms 6 3 ms T10ms 7 10 ms T30ms 8 30 ms T100ms 9 100 ms T300ms 10 300 ms Tls 11 ls T3s 12 3s T10s 13 10s T30s 14 30s T100s 15 100 s T300s 16 300 s T
38. Functions IBCMDA IBCMDA Board Level Purpose Format Send GPIB commands asynchronously C int ibcmda int ud void cmdbuf long count Visual Basic CALL ibemda ud cmdbuf or status ilcmda ud cmdbuf count amp Input ud A board unit descriptor cmdbuf Buffer of command bytes to send count Number of command bytes to send Output Function Return The value of ibsta Description ibcmda sends count bytes from cmdbuf over the GPIB as command bytes interface messages The number of command bytes transferred is returned in the global variable ibcnt1 Refer to Table A 1 Multiline Interface Messages for definitions of the interface messages Command bytes are used to configure the state of the GPIB They are not used to send instructions to GPIB devices Use ibwrt to send device specific instructions The asynchronous I O calls ibcmda ibrda ibwrta are designed so that applications can perform other non GPIB operations while the I O is in progress Once the asynchronous I O begins further GPIB calls are strictly limited Any calls that would interfere with the I O in progress are not allowed the driver returns EOIP in this case NI 488 2M Function Reference Manual for Win32 1 16 ni com Chapter 1 NI 488 Functions IBCMDA Once the I O is complete the application must resynchronize with the GPIB driver Resynchronization is accomplished by using one of the following functions ibnotify If the ib
39. G8 49 73 I MTA9 69 105 i MSAS9 PPE CFG9 4A 74 J MTA10 6A 106 j MSA10 PPE CFG10 4B 75 K MTA11 6B 107 k MSA11 PPE CFG11 4C 76 L MTA12 6C 108 1 MSA12 PPE CFG12 4D 77 M MTA13 6D 109 m MSA13 PPE CFG13 4E 78 N MTA 14 6E 110 n MSA14 PPE CFG14 4F 79 O MTA15 6F 111 o MSA15 PPE CFG15 50 80 P MTA16 70 112 p MSA16 PPD 51 81 Q MTA17 71 113 q MSA17 PPD 32 82 R MTA18 12 114 r MSA18 PPD 53 83 S MTA19 73 115 s MSA19 PPD 54 84 T MTA20 74 116 t MSA20 PPD 55 85 U MTA21 75 117 u MSA21 PPD 56 86 Vv MTA22 76 118 v MSA22 PPD 57 87 Ww MTA23 77 119 w MSA23 PPD 58 88 X MTA24 78 120 X MSA24 PPD 59 89 Y MTA25 79 121 y MSA25 PPD SA 90 Z MTA26 7A 122 Z MSA26 PPD 5B 91 MTA27 7B 123 MSA27 PPD 5C 92 MTA28 7C 124 MSA28 PPD 5D 93 MTA29 7D 125 MSA29 PPD SE 94 A MTA30 TE 126 MSA30 PPD 5F 95 _ UNT TF 127 DEL O National Instruments Corporation A 3 NI 488 2M Function Reference Manual for Win32 Appendix A Multiline Interface Messages Multiline Interface Message Definitions CFE Configuration Enable PPD Parallel Poll Disable CFG Configure PPE Parallel Poll Enable DCL Device Clear PPU Parallel Poll Unconfigure GET Group Execute Trigger SDC Selected Device Clear GTL Go To Local SPD Serial Poll Disable LLO Local Lockout SPE Serial Poll Enable MLA My Listen Address TCT Take Control MSA My Secondary Address UNL Unlisten MTA My Talk Address UNT Untalk PPC Parallel Pol
40. GPIB NI 488 2W Function Reference Manual for Win32 Y NATIONAL April 2004 Edition gt INSTRUMENTS Part Number 371104A 01 Worldwide Technical Support and Product Information ni com National Instruments Corporate Headquarters 11500 North Mopac Expressway Austin Texas 78759 3504 USA Tel 512 683 0100 Worldwide Offices Australia 1800 300 800 Austria 43 0 662 45 79 90 0 Belgium 32 0 2 757 00 20 Brazil 55 11 3262 3599 Canada Calgary 403 274 9391 Canada Ottawa 613 233 5949 Canada Qu bec 450 510 3055 Canada Toronto 905 785 0085 Canada Vancouver 514 685 7530 China 86 21 6555 7838 Czech Republic 420 224 235 774 Denmark 45 45 76 26 00 Finland 385 0 9 725 725 11 France 33 0 1 48 14 24 24 Germany 49 0 89 741 31 30 Greece 30 2 10 42 96 427 India 91 80 51190000 Israel 972 0 3 6393737 Italy 39 02 413091 Japan 81 3 5472 2970 Korea 82 02 3451 3400 Malaysia 603 9131 0918 Mexico 001 800 010 0793 Netherlands 31 0 348 433 466 New Zealand 0800 553 322 Norway 47 0 66 90 76 60 Poland 48 22 3390150 Portugal 351 210 311 210 Russia 7 095 783 68 51 Singapore 65 6226 5886 Slovenia 386 3 425 4200 South Africa 27 0 11 805 8197 Spain 34 91 640 0085 Sweden 46 0 8 587 895 00 Switzerland 41 56 200 51 51 Taiwan 886 2 2528 7227 Thailand 662 992 7519 United Kingdom 44 0 1635 523545 For further support information refer to the Technical Support and Professional Services appendix To comment on the documentation send e
41. I 488 functions Examine the variable before the failing function to make sure its value has not been corrupted For Windows 95 refer to the Troubleshooting EDVR Error Conditions section in Appendix C Windows 95 Troubleshooting and Common Questions of the GPIB User Manual for Win32 for more information ECIC is returned when one of the following board functions or routines is called while the board is not CIC Any device level NI 488 functions that affect the GPIB Any board level NI 488 functions that issue GPIB command bytes ibcmd ibcmda ibln and ibrpp ibcac and ibgts Any of the NI 488 2 routines that issue GPIB command bytes SendCmds PPoll Send and Receive NI 488 2M Function Reference Manual for Win32 C 2 ni com Solutions Appendix C Error Codes and Solutions Possible solutions for this error are as follows ENOL 2 Use ibsic or SendIFC to make the GPIB board become CIC on the GPIB Use ibrsc 1 to make sure your GPIB board is configured as System Controller In multiple CIC situations always be certain that the CIC bit appears in the status word ibsta before attempting these calls If it does not appear you can perform an ibwait for CIC call to delay further processing until control is passed to the board ENOL usually occurs when a write operation is attempted with no Listeners addressed For a device write ENOL indicates that the GPIB address configured for that device in the software does n
42. IB board is Talker board only LACS 2 4 GPIB board is Listener board only DTAS 1 2 GPIB board is in Device Trigger State board only DCAS 0 1 GPIB board is in Device Clear State board only 3 Note Notification is performed when the state of one or more of the mask bits is true so if a request is made to be notified when CMPL is true and CMPL is currently true the Callback is invoked immediately ayi Note For device level usage notification on RQS cannot be guaranteed to work if automatic serial polling is disabled By default automatic serial polling is enabled A given ud can have only one outstanding ibnotify call at any one time If a current ibnotify is in effect for ud it is replaced by a subsequent ibnotify call An outstanding ibnotify call for ud can be canceled by a subsequent ibnotify call for ud that has a mask of 0 If an ibnotify call is outstanding and one or more of the GPIB events it is waiting on becomes true the Callback is invoked NI 488 2M Function Reference Manual for Win32 1 42 ni com Chapter 1 NI 488 Functions IBNOTIFY Callback Prototype int __stdcall Callback int ud int ibsta int iberr long ibcntl void RefData Callback Parameters ud Board or device descriptor ibsta Value of ibsta iberr Value of iberr ibentl Value of ibent1 RefData User defined reference data for the callback Callback Return Value Bit mask of the GPIB events to notice next The Callback function execut
43. LN function 1 37 to 1 38 local functions and routines EnableLocal 2 7 IBLOC 1 39 to 1 40 SendLLO 2 26 lockout routines SendLLO 2 26 SetRWLS 2 28 LOK status word condition B 3 manual See documentation multiline interface messages A 1 to A 4 National Instruments support and services D 1 NI 488 functions alphabetical list of functions table 1 2 to 1 4 board level functions table 1 3 to 1 4 device level functions table 1 2 to 1 3 IBASK function 1 5 to 1 10 IBBNA 1 11 IBCAC 1 12 to 1 13 National Instruments Corporation IBCLR 1 14 IBCMD 1 15 IBCMDA 1 16 to 1 17 IBCONHIG 1 18 to 1 23 IBDEV function 1 24 to 1 25 IBDMA function 1 26 IBEOS function 1 27 to 1 28 IBEOT function 1 29 IBFIND function 1 30 to 1 31 IBGTS function 1 32 to 1 33 IBIST function 1 34 IBLINES function 1 35 to 1 36 IBLN function 1 37 to 1 38 IBLOC function 1 39 to 1 40 IBNOTIFY function 1 41 to 1 44 IBONL function 1 45 IBPAD function 1 46 IBPCT function 1 47 IBPPC function 1 48 to 1 49 IBRD function 1 50 to 1 51 IBRDA function 1 52 to 1 53 IBRDF function 1 54 to 1 55 IBRPP function 1 56 IBRSC function 1 57 IBRSP function 1 58 to 1 59 IBRSV function 1 60 IBSAD function 1 61 IBSIC function 1 62 IBSRE function 1 63 IBSTOP function 1 64 IBTMO function 1 65 to 1 66 IBTRG function 1 67 IBWAIT function 1 68 to 1 69 IBWRT function 1 70 to 1 71 IBWRTA function 1 72 to 1 73 IBWRTF functi
44. No Listeners on the GPIB EADR 3 GPIB board not addressed correctly EARG 4 Invalid argument to function call ESAC 5 GPIB board not System Controller as required EABO 6 I O operation aborted timeout ENEB 7 Nonexistent GPIB board EDMA 8 DMA error EOIP 10 Asynchronous I O in progress ECAP 11 No capability for operation EFSO 12 File system error EBUS 14 GPIB bus error ESTB 15 Serial poll status byte queue overflow ESRQ 16 SRQ stuck in ON position ETAB 20 Table problem National Instruments Corporation C 1 NI 488 2M Function Reference Manual for Win32 Appendix C Error Codes and Solutions EDVR 0 EDVR is returned when the board or device name passed to ibfind or the board index passed to ibdev cannot be accessed The global variable ibcnt1 contains an error code This error occurs when you try to access a board or device that is not installed or configured properly EDVR is also returned if an invalid unit descriptor is passed to any NI 488 function call Solutions Possible solutions for this error are as follows ECIC 1 Use ibdev to open a device without specifying its symbolic name Use only device or board names that are configured in the GPIB Configuration utility as parameters to the ibfind function Use the GPIB Configuration utility to ensure that each board you want to access is configured properly Use the unit descriptor returned from ibdev or ibfind as the first parameter in subsequent N
45. O National Instruments Corporation 2 3 NI 488 2M Function Reference Manual for Win32 NI 488 2 Routines List of NI 488 2 Routines Chapter 2 NI 488 2 Routines AllSpoll AllSpoll Purpose Serial poll all devices Format C void AllSpoll int boardID Addr4882_t addrlist short resultlist Visual Basic CALL AllSpoll boardID addrlist resultlist Input boardID The interface board number addrlist A list of device addresses that is terminated by NOADDR Output resultlist A list of serial poll response bytes corresponding to device addresses in addrlist Description A11Spo11 serial polls all of the devices described by addr1ist It stores the poll responses in resultlist and the number of responses in ibent1 Possible Errors EABO One of the devices timed out instead of responding to the serial poll ibcnt1 contains the index of the timed out device EARG An invalid address appears in addrlist ibcnt1 is the index of the invalid address in the addrlist array EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 2 4 ni com Chapter 2 NI 488 2 Routines DevClear DevClear Purpose Clear a single device F
46. OMPATIBILITY PROBLEMS MALFUNCTIONS OR FAILURES OF ELECTRONIC MONITORING OR CONTROL DEVICES TRANSIENT FAILURES OF ELECTRONIC SYSTEMS HARDWARE AND OR SOFTWARE UNANTICIPATED USES OR MISUSES OR ERRORS ON THE PART OF THE USER OR APPLICATIONS DESIGNER ADVERSE FACTORS SUCH AS THESE ARE HEREAFTER COLLECTIVELY TERMED SYSTEM FAILURES ANY APPLICATION WHERE A SYSTEM FAILURE WOULD CREATE A RISK OF HARM TO PROPERTY OR PERSONS INCLUDING THE RISK OF BODILY INJURY AND DEATH SHOULD NOT BE RELIANT SOLELY UPON ONE FORM OF ELECTRONIC SYSTEM DUE TO THE RISK OF SYSTEM FAILURE TO AVOID DAMAGE INJURY OR DEATH THE USER OR APPLICATION DESIGNER MUST TAKE REASONABLY PRUDENT STEPS TO PROTECT AGAINST SYSTEM FAILURES INCLUDING BUT NOT LIMITED TO BACK UP OR SHUT DOWN MECHANISMS BECAUSE EACH END USER SYSTEM IS CUSTOMIZED AND DIFFERS FROM NATIONAL INSTRUMENTS TESTING PLATFORMS AND BECAUSE A USER OR APPLICATION DESIGNER MAY USE NATIONAL INSTRUMENTS PRODUCTS IN COMBINATION WITH OTHER PRODUCTS IN A MANNER NOT EVALUATED OR CONTEMPLATED BY NATIONAL INSTRUMENTS THE USER OR APPLICATION DESIGNER IS ULTIMATELY RESPONSIBLE FOR VERIFYING AND VALIDATING THE SUITABILITY OF NATIONAL INSTRUMENTS PRODUCTS WHENEVER NATIONAL INSTRUMENTS PRODUCTS ARE INCORPORATED IN A SYSTEM OR APPLICATION INCLUDING WITHOUT LIMITATION THE APPROPRIATE DESIGN PROCESS AND SAFETY LEVEL OF SUCH SYSTEM OR APPLICATION Contents About This Manual How to Use The Manual Set cccccccccccssss
47. Options Continued Options Constants Returned Information IbaSAD The current secondary address of the device See ibsad IbaSPollTime The length of time the driver waits for a serial poll response when polling the device The length of time is represented by the ibtmo timing values IbaTMO The current timeout period of the device See ibtmo TbaUnAddr zero The GPIB commands Untalk UNT and Unlisten UNL are not sent after each device level read and write operation non zero The UNT and UNL commands are sent after each device level read and write IbaWriteAdjust 0 Write operations do not have pairs of bytes swapped 1 Write operations do have each pair of bytes swapped NI 488 2M Function Reference Manual for Win32 1 10 ni com Chapter 1 NI 488 Functions IBBNA IBBNA Device Level Purpose Change the access board of a device Format C int ibbna int ud char bname Visual Basic CALL ibbna ud bnames or status ilbna ud bname Input ud A device unit descriptor bname An access board name such as GPIBO Output Function Return The value of ibsta Description ibbna assigns the device described by ud to the access board described by bname All subsequent bus activity with device ud occurs through the access board bname If the call succeeds iberr contains the previous access board index Possible Errors EARG Either ud does not refer to a device or bnam
48. RQS FindRQS Purpose Determine which device is requesting service Format C void FindROS int boardID Addr4882_t addrlist short result Visual Basic CALL FindRQS boardID addrlist result Input boardID The interface board number addrlist List of device addresses that is terminated by NOADDR Output result Serial poll response byte of the device that is requesting service Description FindRQs serial polls the devices described by addr1ist in order until it finds a device which is requesting service The serial poll response byte is then placed in result ibent1 contains the index of the device requesting service in addrlist If none of the devices are requesting service then the index corresponding to NOADDR in addr1ist is returned in ibcnt1 and ETAB is returned in iberr Possible Errors EARG An invalid address appears in addrlist ibcnt1 is the index of the invalid address in the addrlist array EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress ETAB None of the devices in addrlist are requesting service or addrlist contains only NOADDR ibcnt1 contains the index of NOADDR in addrlist NI 488 2M Function Reference Manual for Win32 2 10 ni com Chapter 2 NI 488 2 Routines
49. See also acceptor handshake and handshake The GPIB command used to cancel an SPE command The GPIB command used to enable a specific device to be polled That device must also be addressed to talk See also SPD The GPIB line that a device asserts to notify the CIC that the device needs servicing The IEFE 488 2 defined data byte sent by a device when it is serially polled See ibsta Refers to the relationship between the GPIB driver functions and a process when executing driver functions is predictable the process is blocked until the driver completes the function The single designated Controller that can assert control become CIC of the GPIB by sending the Interface Clear IFC message Other devices can become CIC only by having control passed to them National Instruments Corporation G 7 NI 488 2M Function Reference Manual for Win32 Glossary T TAD Talk Address Talker TCT Take Control timeout TLC U ud unit descriptor UNL Unlisten UNT Untalk See MTA A GPIB device that sends data messages to Listeners The GPIB command used to pass control of the bus from the current Controller to an addressed Talker A feature of the GPIB driver that prevents I O functions from hanging indefinitely when there is a problem on the GPIB An integrated circuit that implements most of the GPIB Talker Listener and Controller functions in hardware A variable name and first argument of each funct
50. Use the GPIB User Manual for Win32 if you want to learn the basics of GPIB and how to develop an application The user manual also contains debugging information and detailed examples National Instruments Corporation ix NI 488 2M Function Reference Manual for Win32 About This Manual Use this NI 488 2M Function Reference Manual for Win32 for specific information about each NI 488 function and NI 488 2 routine such as format parameters and possible errors Organization of This Manual This manual is organized as follows Chapter 1 N7 488 Functions lists the NI 488 functions and describes the purpose format input and output parameters and possible errors for each function Chapter 2 NI 488 2 Routines lists the NI 488 2 routines and describes the purpose format input and output parameters and possible errors for each routine Chapter 3 Functions for Multithreaded Applications lists the extra functions designed for multithreaded applications and describes the purpose format and input and output parameters for each function Appendix A Multiline Interface Messages contains a multiline interface message reference list which describes the mnemonics and messages that correspond to the interface functions Appendix B Status Word Conditions gives a detailed description of the conditions reported in the status word ibsta Appendix C Error Codes and Solutions lists a description of each error some conditions und
51. acter is received If bits A and C are both set then a read ends when a byte that matches all eight bits of the EOS character is received Configuration bits B and C determine when a write I O operation asserts the GPIB EOI line If bit B is set and bit C is clear then EOI is asserted when the written character matches the low seven bits of the EOS character If bits B and C are both set then EOI is asserted when the written character matches all eight bits of the EOS character For more information about the termination of I O operations refer to Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 Examples ibeos ud 0x140A Configure the software to end reads on newline character hex 0A for the unit descriptor ud ibeos ud 0x180A Configure the software to assert the GPIB EOI line whenever the newline character hex OA is written out by the unit descriptor ud Possible Errors EARG The high byte of v contains invalid bits EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 28 ni com Chapter 1 NI 488 Functions IBEOT IBEOT Board Level Device Level Purpose Enable or disable the automatic assertion of the GPIB EOI line at the end of write I O operations Format C int ibeot int ud int v Vis
52. addrlist Input boardID The interface board number addrlist A list of device addresses terminated by NOADDR Description TriggerList sends the Group Execute Trigger GET GPIB message to the devices described by addr1ist If the only address in addrlist is the constant NOADDR then no addressing is performed and the GET message is sent to all devices that are currently listen active on the GPIB Possible Errors EARG An invalid address appears in addrlist ibcnt1 is the index of the invalid address in the addrlist array EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 2 33 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines WaitSRQ WaitSRQ Purpose Wait until a device asserts the GPIB Service Request SRQ line Format C void WaitSRQ int boardID short result Visual Basic CALL WaitSRQ boardID result Input boardID The interface board number Output result State of the SRQ line non zero if line is asserted zero if line is not asserted Description WaitSRQ waits until either the GPIB SRQ line is asserted or the timeout period has expired see ibtmo When WaitSRQ returns result contains a non zero i
53. ain an alphabetical list of the NI 488 functions Table 1 1 NI 488 Device Level Functions Function Purpose ibask Return information about software configuration parameters ibbna Change the access board of a device ibclr Clear a specific device ibconfig Change the software configuration parameters ibdev Open and initialize a device ibeos Configure the end of string EOS termination mode or character ibeot Enable or disable the automatic assertion of the GPIB EOI line at the end of write I O operations ibln Check for the presence of a device on the bus ibloc Go to local ibnotify Notify user of one or more GPIB events by invoking the user callback ibonl Place the device online or offline ibpad Change the primary address ibpct Pass control to another GPIB device with Controller capability ibppc Parallel poll configure NI 488 2M Function Reference Manual for Win32 1 2 ni com Chapter 1 Table 1 1 NI 488 Device Level Functions Continued Function Purpose ibrd Read data from a device into a user buffer ibrda Read data asynchronously from a device into a user buffer ibrdf Read data from a device into a file ibrpp Conduct a parallel poll ibrsp Conduct a serial poll ibsad Change or disable the secondary address ibstop Abort asynchronous I O operation ibtmo Change or disable the I O timeout per
54. al Lockout you should consider SetRWLS Possible Errors EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress ESAC The interface board is not configured as System Controller NI 488 2M Function Reference Manual for Win32 2 26 ni com Chapter 2 NI 488 2 Routines SendSetup SendSetup Purpose Format Set up devices to receive data in preparation for SendDataBytes C void SendSetup int boardID Addr4882_t addrlist Visual Basic CALL SendSetup boardID addrlist Input boardID The interface board number addrlist A list of device addresses that is terminated by NOADDR Description SendSetup makes the devices described by addr1ist listen active and makes the interface board talk active This call is usually followed by SendDataBytes to actually transfer data from the interface board to the devices SendSetup is particularly useful to set up the addressing before making multiple calls to SendDataBytes it eliminates the need to readdress the devices for every block of data Possible Errors EARG Either an invalid address appears in addrlist or the addrlist is empty ibcnt1 is the index of the invalid address in the addrlist array EBUS No devices are connected to the GPIB
55. amining the error variable iberr Appendix C Error Codes and Solutions describes error codes that are recorded in iberr along with possible solutions ERR is cleared following any call that does not result in an error TIMO dev brd TIMO indicates that the timeout period has expired TIMO is set in the status word following any synchronous I O functions for example ibcmd ibrd ibwrt Receive Send and Sendcmds if the timeout period expires before the I O operation has completed TIMO also is set in the status word following an ibwait or ibnotify call if the TIMO bit is set in the mask parameter and the timeout period expires before any other specified mask bit condition occurs TIMO is cleared in all other circumstances END dev brd END indicates either that the GPIB EOI line has been asserted or that the EOS byte has been received if the software is configured to terminate a read on an EOS byte If the GPIB board is performing a shadow handshake as a result of the ibgts function any other function can return a status word with the END bit set if the END condition occurs before or during that call END is cleared when any I O operation is initiated Some applications might need to know the exact I O read termination mode of a read operation EOI by itself the EOS character by itself or EOI plus the EOS character You can use the ibconfig function option IbcEndBitIsNormal to enable a mode in which the END bit is set
56. andard 488 2 1992 respectively which define the GPIB Italic text denotes variables emphasis a cross reference or an introduction to a key concept This font also denotes text that is a placeholder for a word or value that you must supply Text in this font denotes text or characters that you should enter from the keyboard sections of code programming examples and syntax examples This font is also used for the proper names of disk drives paths directories programs subprograms subroutines device names functions operations variables filenames and extensions Related Documentation The following documents contain information that you may find helpful as you read this manual e ANSI TEEE Standard 488 1 1987 IEEE Standard Digital Interface for Programmable Instrumentation ANSI TEEE Standard 488 2 1992 IEEE Standard Codes Formats Protocols and Common Commands e Microsoft Windows 95 98 Online Help National Instruments Corporation xi NI 488 2M Function Reference Manual for Win32 About This Manual e Microsoft Windows NT Online Help e Microsoft Win32 Software Development Kit for Microsoft Windows NI 488 2M Function Reference Manual for Win32 xii ni com NI 488 Functions This chapter lists the NI 488 functions and describes the purpose format input and output parameters and possible errors for each function For general programming information refer to the GPIB User Manual for Win32 The user
57. ard level A Device Clear message was received from the CIC Board level The GPIB is not correctly addressed use ibcmd to address the GPIB Device level A conflict exists between the device GPIB address and the GPIB address of the device access board Use ibpad and ibsad Device level No devices are connected to the GPIB Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 Either ud is invalid or the GPIB driver is not installed The interface board is not installed or is not properly configured No Listeners were detected on the bus Asynchronous I O is in progress National Instruments Corporation 1 73 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBWRTF IBWRTF Board Level Device Level Purpose Write data to a device from a file Format C int ibwrtf int ud char flname Visual Basic CALL ibwrtf ud flnames or status ilwrtf ud flnames Input ud Board or device descriptor flname Name of file containing the data to be written Output Function Return The value of ibsta Description Device Level If ud is a device descriptor ibwrtf addresses the GPIB and writes all of the bytes from the file 1name to a GPIB device The operation terminates normally when all of the bytes have been sent The operation terminates with an error if all
58. ation may not be reproduced or transmitted in any form electronic or mechanical including photocopying recording storing in an information retrieval system or translating in whole or in part without the prior written consent of National Instruments Corporation Trademarks HS488 National Instruments NI ni com NI 488 2 and NI 488 2M are trademarks of National Instruments Corporation Product and company names mentioned herein are trademarks or trade names of their respective companies Patents For patents covering National Instruments products refer to the appropriate location Help Patents in your software the patents txt file on your CD or ni com patents WARNING REGARDING USE OF NATIONAL INSTRUMENTS PRODUCTS 1 NATIONAL INSTRUMENTS PRODUCTS ARE NOT DESIGNED WITH COMPONENTS AND TESTING FOR A LEVEL OF RELIABILITY SUITABLE FOR USE IN OR IN CONNECTION WITH SURGICAL IMPLANTS OR AS CRITICAL COMPONENTS IN ANY LIFE SUPPORT SYSTEMS WHOSE FAILURE TO PERFORM CAN REASONABLY BE EXPECTED TO CAUSE SIGNIFICANT INJURY TO A HUMAN 2 IN ANY APPLICATION INCLUDING THE ABOVE RELIABILITY OF OPERATION OF THE SOFTWARE PRODUCTS CAN BE IMPAIRED BY ADVERSE FACTORS INCLUDING BUT NOT LIMITED TO FLUCTUATIONS IN ELECTRICAL POWER SUPPLY COMPUTER HARDWARE MALFUNCTIONS COMPUTER OPERATING SYSTEM SOFTWARE FITNESS FITNESS OF COMPILERS AND DEVELOPMENT SOFTWARE USED TO DEVELOP AN APPLICATION INSTALLATION ERRORS SOFTWARE AND HARDWARE C
59. btmo values Default zero IbcReadAdjust 0 No byte swapping 1 Swap pairs of bytes during a read Default zero IbcRsv Changes the serial poll status byte of the board Identical to ibrsv Default zero IbcSAD Changes the secondary address of the board Identical to ibsad Default determined by the GPIB Configuration utility Tbesc Request or release system control Identical to ibrsc Default determined by the GPIB Configuration utility TbcSendLLO zero Do not send LLO when putting a device online ibfind or ibdev non zero Send LLO when putting a device online ibfind or ibdev Default zero IbcSRE Assert the Remote Enable REN line Identical to ibsre Default zero IbcTIMING 1 Normal timing T1 delay of 2 us 2 High speed timing T1 delay of 500 ns 3 Very high speed timing T1 delay of 350 ns Default determined by the GPIB Configuration utility The T1 delay is the GPIB Source Handshake timing IbcTMO Changes the timeout period of the board Identical to ibtmo Default determined by the GPIB Configuration utility IbcWriteAdjust 0 No byte swapping 1 Swap pairs of bytes during a write Default zero National Instruments Corporation 1 21 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBCONFIG Table 1 6 lists the options you can use with ibconfig when ud is a device descriptor
60. ccccesssseccccessssseecceesssseeecesessaeeeeecessaeeeesenees 1x Organization of This Manual ooonnnnnnicononnononnnonnnonnnononnnonncnnncnn conc oa i x Conventions Used in This Manual ccccccccccsssssccccesssnseecceesssseeeceeeesseeeeeeeessaeeeeeesees xi Related Documentation cccccccccsssscceeessssseeecesessseeecceeessseeceesseaeececeessaeeeceeessseeeeeeees xi Chapter 1 NI 488 Functions F ncton Names Ana t A dd 1 1 PULP OSE ic O ai 1 1 EM o es e EN de e 1 1 Input and Output ido e a 1 1 Description eie n aE ia 1 1 EXAMpleS aa E E A A 1 2 TAOTI aI EA Anp EE A A ID 1 2 List of NI 488 FUunctions cccccccssccccesssssecccccsssseccccessnseecceessseeeceseesseeeeeceeeaeeeeeesen 1 2 TIBASK a ida a 1 5 IBBNA titanio trolas o id tinca diet io ant 0 1 11 1i EES E AT A AITA e eo dei del ie o nad 1 12 TBCGER anna a a Ras 1 14 POUM no airada 1 15 A sthcccc a Be peeves Beh ea ade as E EREE 1 16 TBEONEI Gt A saccades BE RS avs os sas 1 18 IBDE Va a NEE e ate o dr EE 1 24 TBDMA 2 AS os ele din Sah ee a 1 26 TBE OS tirao tr Ma eased ate 1 27 BEO Li ER 1 29 IBEIND ta sd o Us ena o ll 1 30 PO E Ma ee ee 1 32 A NU 1 34 IBLINES ui dalla ok 1 35 IBEN Sua aa tried 1 37 PL fOO a da a da 1 39 IBNO TEI A theca sdkcesharaiett othasss sets sos sua cbet A a oan ea eee esas 1 41 BONE 24 GBB iio eS 1 45 TB RAD 1 a a ada fis Rite ad 1 46 BCE ica 1 47 A E E A AEE A EE EEA 1 48 BD E AA A A E E A OT 1 50 National Instruments Corpo
61. command used to trigger a device or internal function of an addressed Listener General Purpose Interface Bus is the common name for the communications interface system defined in ANSVIEEE Standard 488 1 1987 and ANSI IEEE Standard 488 2 1992 The address of a device on the GPIB composed of a primary address MLA and MTA and perhaps a secondary address MSA The GPIB board has both a GPIB address and an I O address Refers to the National Instruments family of GPIB interface boards Go To Local is the GPIB command used to place an addressed Listener in local front panel control mode NI 488 2M Function Reference Manual for Win32 Glossary H handshake hex high level function Hz T O Input Output T O address ibent iberr ibsta TEEE interface message The mechanism used to transfer bytes from the Source Handshake function of one device to the Acceptor Handshake function of another device The three GPIB lines DAV NRFD and NDAC are used in an interlocked fashion to signal the phases of the transfer so that bytes can be sent asynchronously for example without a clock at the speed of the slowest device For more information about handshaking refer to the ANSI IEEE Standard 488 1 1987 Hexadecimal a number represented in base 16 For example decimal 16 hex 10 See device level function Hertz In the context of this manual the transmission of commands or messages between the computer v
62. d the last byte is sent without the EOI line asserted if eotmode is NULLend If eotmode is NLend then a new line character n is sent with the EOI line asserted after the last byte The actual number of bytes transferred is returned in the global variable ibcnt1 SendDataBytes assumes that the interface board is in talk active state and that devices are already addressed as Listeners on the GPIB see SendSetup Send or SendList Possible Errors EABO The I O timeout period expired before all of the bytes were sent EADR The interface board is not talk active use SendSetup to address the GPIB properly EARG Either the eotmode parameter is invalid it can only be DABend NULLend or NLend or the buffer is empty and the eotmode is DABend ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured ENOL No Listeners are on the GPIB to accept the data bytes use SendSetup to address the GPIB properly EOIP Asynchronous I O is in progress National Instruments Corporation 2 23 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines SendlFC SendlFC Purpose Reset the GPIB by sending interface clear Format C void SendIFC int boardID Visual Basic CALL SendIFC boardID Input boardID The interface board number Description SendIFC is
63. d constants in Table 1 5 and value must be valid for the parameter that you are configuring The previous setting of the configured item is returned in iberr Possible Errors EARG Either option or value is not valid See Table 1 5 ECAP The driver is not able to make the requested change EDVR Either ud is invalid or the GPIB driver is not installed EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 18 ni com Chapter 1 NI 488 Functions IBCONFIG Table 1 5 lists the options you can use with ibconfig when ud is a board descriptor or a board index An alphabetical list of the option constants follows IbcAUTOPOLL IbcCICPROT IbcDMA IbcEndBitIsNormal TbcEOSchar TbcEOScmp IbcEOSrd TbcEOSwrt IbcEOT IbcHSCableLength IbcIst IbcPAD IbcPP2 IbcPPC o IbcPPollTime TbcReadAdjust IbcRsv TbcSAD Tbesc IbcSendL LO IbcSRE IbcTIMING e IbcTMO TbcWriteAdjust Table 1 5 ibconfig Board Configuration Parameter Options Options Constants Legal Values IbcAUTOPOLL zero Disable automatic serial polling non zero Enable automatic serial polling Default determined by the GPIB Configuration utility Refer to the GPIB User Manual for Win32 for more information about automatic serial polling IbcCICPROT zero Disable the CIC protocol non zero Enable the CIC protocol Default determined by the GPIB Configurati
64. d into the buffer Data bytes are read until either count bytes have been read or the termination condition is detected If the termination condition is STOPend the read is stopped when a byte is received with the EOI line asserted Otherwise the read is stopped when an 8 bit EOS character is detected The actual number of bytes transferred is returned in the global variable ibent1 Possible Errors EABO The I O timeout period elapsed before all the bytes were received EARG The address or termination parameter is invalid The address must be a valid primary secondary address pair It cannot be the constant NOADDR EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 2 18 ni com Chapter 2 NI 488 2 Routines ReceiveSetup ReceiveSetup Purpose Format Address a device to be a Talker and the interface board to be a Listener in preparation for RevRespMsg c void ReceiveSetup int boardID Addr4882_t address Visual Basic CALL ReceiveSetup boardID address Input boardID The interface board number address Address of a device to be talk addressed Description ReceiveSetup Makes the device described by address talk active and makes
65. d is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 60 ni com IBSAD Board Level Device Level Chapter 1 NI 488 Functions IBSAD Purpose Change or disable the secondary address Format C int ibsad int ud int v Visual Basic CALL ibsad ud v or status ilsad ud v Input ud Board or device descriptor v GPIB secondary address Output Function Return The value of ibsta Description ibsad changes the secondary GPIB address of the given board or device to v an integer in the range 96 to 126 hex 60 to hex 7E or zero If v is zero secondary addressing is disabled If no error occurs during the call then the previous value of the GPIB secondary address is returned in iberr Possible Errors National Instruments Corporation not properly configured EARG v is non zero and outside the legal range 96 to 126 EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is EOIP Asynchronous I O is in progress 1 61 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBSIC IBSIC Board Level Purpose Assert interface clear Format C int ibsic int ud Visual Basic CALL ibsic ud or status ilsic ud Input ud Board descriptor Output Func
66. d the GPIB address of the device access board Use ibpad and ibsad Device level No devices are connected to the GPIB Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 Either ud is invalid or the GPIB driver is not installed The interface board is not installed or is not properly configured No Listeners were detected on the bus Asynchronous I O is in progress National Instruments Corporation 1 71 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBWRTA IBWRTA Board Level Device Level Purpose Write data asynchronously to a device from a user buffer Format C int ibwrta int ud int wrtbuf long count Visual Basic CALL ibwrta ud wrtbuf or status ilwrta ud wrtbuf count amp Input ud Board or device descriptor wrtbuf Address of the buffer containing the bytes to write count Number of bytes to be written Output Function Return The value of ibsta Description Device Level If ud is a device descriptor ibwrta addresses the GPIB properly and writes count bytes from wrtbuf to a GPIB device The operation terminates normally when count bytes have been sent The actual number of bytes transferred is returned in the global variable ibcnt1 Board Level If ud is a board descriptor ibwrta begins an asynchronous write of count bytes of data
67. defined in dec1 32 h Like ibwait ibstop and ibon1 the invocation of the ibnotify Callback can cause the resynchronization of the handler after an asynchronous I O operation has completed In this case the global variables passed into the Callback after I O has completed contain the status of the I O operation For more information of the usage of ibnotify and a detailed example refer to the Asynchronous Event Notification section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 National Instruments Corporation 1 43 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBNOTIFY Possible Errors for ibnotify EARG A bit set in mask is invalid ECAP ibnotify has been invoked from within an ibnotify Callback function or the handler cannot perform notification on one or more of the specified mask bits EDVR Either ud is invalid or the GPIB driver is not installed ibcnt1 contains a system dependent error code ENEB The interface board is not installed or is not properly configured Possible Error for the Callback EDVR The Callback return failed to rearm the Callback NI 488 2M Function Reference Manual for Win32 1 44 ni com IBONL Board Level Device Level Chapter 1 NI 488 Functions IBONL Purpose Place the device or interface board online or offline Format C int ibonl int ud Visual Basic CALL ibonl uds or status ilonl Input ud
68. dicates whether the GPIB board has detected a device trigger command DTAS is set whenever the GPIB board as a Listener detects that the Group Execute Trigger GET command has been sent by another Controller DTAS is cleared on any call immediately following an ibwait call if the DTAS bit is set in the ibwait mask parameter DCAS brd DCAS indicates whether the GPIB board has detected a device clear command DCAS is set whenever the GPIB board detects that the Device Clear DCL command has been sent by another Controller or whenever the GPIB board as a Listener detects that the Selected Device Clear SDC command has been sent by another Controller If you use the ibwait or ibnotify function to wait for DCAS and the wait is completed DCAS is cleared from ibsta after the next GPIB call The same is true of reads and writes If you call a read or write function such as ibwrt or Send and DCAS is set in ibsta the I O operation is aborted DCAS is cleared from ibsta after the next GPIB call National Instruments Corporation B 5 NI 488 2M Function Reference Manual for Win32 Error Codes and Solutions This appendix lists a description of each error some conditions under which it might occur and possible solutions The following table lists the GPIB error codes Error iberr Mnemonic Value Meaning EDVR 0 System error ECIC 1 Function requires GPIB board to be CIC ENOL 2
69. dlberr Threadlberr Purpose Return the value of the thread specific iberr Format C int ThreadIberr Visual Basic rc ThreadIberr Input none No input parameters Output Function Return Value of iberr for the calling thread Description ThreadIberr returns the current value of iberr for a particular thread of execution The global GPIB status variables ibsta iberr ibcnt ibcnt1 are maintained on a per process basis which means that their values are updated whenever any thread in that process makes GPIB calls The thread GPIB status variables are maintained on a per thread basis which means that their values are updated whenever that particular thread makes GPIB calls If your application performs GPIB operations in multiple threads your application should examine the thread GPIB status variables using ThreadIbsta ThreadIberr ThreadIbcnt and ThreadIbcnt1 instead of the global GPIB status variables O National Instruments Corporation 3 5 NI 488 2M Function Reference Manual for Win32 Chapter 3 Functions for Multithreaded Applications Threadlbsta Threadlbsta Purpose Return the value of the thread specific ibsta Format C int ThreadIbsta Visual Basic rc ThreadIbsta Input none No input parameters Output Function Return Value of ibsta for the calling thread Description ThreadIbsta returns the current value of ibsta for a particular thread of execution The global GPIB stat
70. e EOI line asserted if eotmode is NULLend If eotmode is NLend then a new line character n is sent with the EOI line asserted after the last byte of buffer The actual number of bytes transferred is returned in the global variable ibcnt1 Possible Errors EABO The I O timeout period has expired before all of the bytes were sent EARG Either the address parameter or eotmode parameter is invalid or the buffer is empty and eotmode is DABend The address must be a valid primary secondary address pair it cannot be the constant NOADDR The eotmode parameter can only be DABend NULLend or NLend EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured ENOL No Listeners are on the GPIB to accept the data bytes EOIP Asynchronous I O is in progress National Instruments Corporation 2 21 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines SendCmds SendCmds Purpose Send GPIB command bytes Format C void SendCmds int boardID void buffer long count Visual Basic CALL SendCmds boardID buffers Input boardID The interface board number buffer Command bytes to be sent count Number of bytes to be sent Description Sendcmds sends count command bytes from buffer over the GPIB as command bytes inte
71. e GPIB e Ifthe timeout period is too short for the driver to send command bytes increase the timeout period Solutions ESRQ 16 ESTB is reported only by the ibrsp function ESTB indicates that one or more serial poll status bytes received from automatic serial polls have been discarded because of a lack of storage space Several older status bytes are available however the oldest is being returned by the ibrsp call Possible solutions for this error are as follows e Call ibrsp more frequently to empty the queue e Disable autopolling with the ibconfig function option IbcAUTOPOLL or the GPIB Configuration utility ESRQ can only be returned by a device level ibwait call with RQS set in the mask ESRQ indicates that a wait for RQS is not possible because the GPIB SRQ line is stuck on This situation can be caused by the following events e Usually a device unknown to the software is asserting SRQ Because the software does not know of this device it can never serial poll the device and unassert SRQ A GPIB bus tester or similar equipment might be forcing the SRQ line to be asserted e A cable problem might exist involving the SRQ line Although the occurrence of ESRQ warns you of a definite GPIB problem it does not affect GPIB operations except that you cannot depend on the ibsta RQS bit while the condition lasts NI 488 2M Function Reference Manual for Win32 C 8 ni com Appendix C Error Codes and Solutions
72. e does not refer to a valid board name ECIC The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 EDVR Either ud is invalid or the GPIB driver is not installed ENEB The access board is not installed or configured properly EOIP Asynchronous I O is in progress National Instruments Corporation 1 11 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBCAC IBCAC Board Level Purpose Become Active Controller Format C int ibcac int ud int v Visual Basic CALL ibcac ud v or status ilcac ud v Input ud A board unit descriptor v Determines if control is to be taken asynchronously or synchronously Output Function Return The value of ibsta Description Using ibcac the designated GPIB board attempts to become the Active Controller by asserting ATN If v is zero the GPIB board takes control asynchronously if v is non zero the GPIB board takes control synchronously Before you call ibcac the GPIB board must already be CIC To make the board CIC use the ibsic function To take control synchronously the GPIB board attempts to assert the ATN signal without corrupting transferred data If this is not possible the board takes control asynchronously To take control asynchronously the GPIB board asserts ATN immediately without regard for any data transfer currentl
73. ead data asynchronously from a device into a user buffer Format C int ibrda int ud int rdbuf long count Visual Basic CALL ibrda ud rdbuf or status ilrda ud rdbuf count amp Input ud Board or device descriptor count Number of bytes to be read from the GPIB Output rdbuf Address of buffer into which data is read Function Return The value of ibsta Description Device Level If ud is a device descriptor ibrda addresses the GPIB begins an asynchronous read of up to count bytes of data from a GPIB device and places the data into the buffer specified by rdbuf The operation terminates normally when count bytes have been received or END is received The actual number of bytes transferred is returned in the global variable ibcnt1 Board Level If ud is a board descriptor ibrda reads up to count bytes of data from a GPIB device and places the data into the buffer specified by rdbuf A board level ibrda assumes that the GPIB is already properly addressed The operation terminates normally when count bytes have been received or END is received The operation terminates with an error if the board is not the CIC and the CIC sends a Device Clear on the GPIB The actual number of bytes transferred is returned in the global variable ibent1 NI 488 2M Function Reference Manual for Win32 1 52 ni com Chapter 1 NI 488 Functions IBRDA Board and Device Level The asynchronous I O calls ibcmda ibrda ibwrta are design
74. ed so that applications can perform other non GPIB operations while the I O is in progress Once the asynchronous I O has begun further GPIB calls are strictly limited Any calls that would interfere with the I O in progress are not allowed the driver returns EOIP in this case Once the I O is complete the application must resynchronize with the GPIB driver Resynchronization is accomplished by using one of the following functions ibnotify ibwait ibstop ibonl Possible Errors EABO EADR EBUS ECIC EDVR ENEB EOIP If the ibsta value passed to the ibnotify callback contains CMPL then the driver and application are resynchronized If the returned ibsta contains CMPL then the driver and application are resynchronized The I O is canceled the driver and application are resynchronized The I O is canceled and the interface is reset the driver and application are resynchronized Board level a Device Clear message was received from the CIC Board level The GPIB is not correctly addressed use ibcmd to address the GPIB Device level A conflict exists between the device GPIB address and the GPIB address of the device access board Use ibpad and ibsad Device level No devices are connected to the GPIB Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 Either ud is invalid or the GPIB driver is
75. er which it might occur and possible solutions Appendix D Technical Support and Professional Services contains forms you can use to request help from National Instruments or to comment on our products and manuals The Glossary contains an alphabetical list and description of terms used in this manual including abbreviations acronyms metric prefixes mnemonics and symbols The ndex contains an alphabetical list of key terms and topics in this manual including the page where you can find each one NI 488 2M Function Reference Manual for Win32 X ni com About This Manual Conventions Used in This Manual E bold GPIB software IEEE 488 1 and IEEE 488 2 italic monospace The following conventions are used in this manual The symbol leads you through nested menu items and dialog box options to a final action The sequence File Page Setup Options directs you to pull down the File menu select the Page Setup item and select Options from the last dialog box This icon denotes a note which alerts you to important information Bold text denotes items that you must select or click in the software such as menu items and dialog box options Bold text also denotes parameter names GPIB software refers generically to either the GPIB software for Windows 95 98 or the GPIB software for Windows NT unless otherwise noted IEEE 488 and IEEE 488 2 refer to the ANSI IEEE Standard 488 1 1987 and the ANSI TEEE St
76. ered users receive free Basic Service which includes access to hundreds of Application Engineers worldwide in the NI Developer Exchange at ni com exchange National Instruments Application Engineers make sure every question receives an answer Training and Certification Visit ni com training for self paced training eLearning virtual classrooms interactive CDs and Certification program information You also can register for instructor led hands on courses at locations around the world System Integration If you have time constraints limited in house technical resources or other project challenges NI Alliance Program members can help To learn more call your local NI office or visit ni com alliance If you searched ni com and could not find the answers you need contact your local office or NI corporate headquarters Phone numbers for our worldwide offices are listed at the front of this manual You also can visit the Worldwide Offices section of ni com niglobal to access the branch office Web sites which provide up to date contact information support phone numbers email addresses and current events National Instruments Corporation D 1 NI 488 2M Function Reference Manual for Win32 Glossary Symbol Prefix Value n nano 10 9 u micro 10 6 m milli 10 3 M mega 106 A acceptor handshake access board ANSI ASCII asynchronous automatic serial polling autopolling
77. erting or not asserting the GPIB data line dataline If 1ineSense equals the individual status ist bit of the device then the assigned GPIB data line is asserted during a parallel poll Otherwise the data line is not asserted during a parallel poll The Controller can use parallel polling to obtain 1 bit device dependent status messages from up to eight devices simultaneously For more information about parallel polling refer to the GPIB User Manual for Win32 Possible Errors EARG Either the address parameter is invalid dataline is not in the range to 8 or lineSense is not 0 or 1 The address must be a valid primary secondary address pair It cannot be the constant NOADDR EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 2 13 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines PPollUnconfig PPollUnconfig Purpose Unconfigure devices for parallel polls Format C void PPollUnconfig int boardID Addr4882_t addrlist Visual Basic CALL PPollUnconfig boardID addrlist Input boardID The interface board number addrlist A list of device addresses that is terminated by NOADDR Description PPoll1Unconfig unco
78. es in a separate thread in your process Therefore it has access to any process global data but no access to thread local data If the Callback needs to access global data you must protect that access using a synchronization primitive for example semaphore because the Callback is running in a different thread context Alternatively the issue of data protection can be avoided entirely if the Callback simply posts a message to your application using the Windows PostMessage function The Callback function can call any of the NI 488 or NI 488 2 functions with the exception of ibnotify When the Callback is invoked the values of the GPIB global variables ibsta iberr ibcnt1 are undefined The status variables passed to Callback should be examined instead of the GPIB globals to determine why the Callback was invoked Notice that it is possible that the Callback may be invoked because of an error condition rather than because of the setting of one or more of the requested mask bits The return value of the Callback is interpreted as a mask value which is used to automatically rearm the asynchronous event notification mechanism If the return value is 0 it is not rearmed If the return value is non zero the asynchronous event notification mechanism is rearmed with the return mask value If the Callback rearm fails due to an error the Callback is invoked with ibsta set to ERR iberr set to EDVR and ibcnt1 set to IBNOTIFY_REARM_ FAILED which is
79. evice Level Purpose Parallel poll configure Format C int ibppe int ud int v Visual Basic CALL ibppce ud v or o status ilppc ud v Input ud Board or device descriptor v Parallel poll enable disable value Output Function Return The value of ibsta Description Device Level If ud is a device descriptor ibppc enables or disables the device from responding to parallel polls The device is addressed and sent the appropriate parallel poll message Parallel Poll Enable PPE or Disable PPD Valid parallel poll messages are 96 to 126 hex 60 to hex 7E or zero to send PPD Board Level If ud is a board descriptor ibppc performs a local parallel poll configuration using the parallel poll configuration value v Valid parallel poll messages are 96 to 126 hex 60 to hex 7E or zero to send PPD If no error occurs during the call then iberr contains the previous value of the local parallel poll configuration For more information about parallel polling refer to the GPIB User Manual for Win32 NI 488 2M Function Reference Manual for Win32 1 48 ni com Possible Errors EARG EBUS ECAP ECIC EDVR ENEB EOIP Chapter 1 NI 488 Functions IBPPC v does not contain a valid PPE or PPD message Device level No devices are connected to the GPIB Board level The board is not configured to perform local parallel poll configuration See ibconfig option IbcPP2 Device level The access board is not
80. f bytes transferred is returned in the global variable ibent1 Function Reference Manual for Win32 1 54 ni com Possible Errors EABO EADR EBUS ECIC EDVR EFSO ENEB EOIP Chapter 1 NI 488 Functions IBRDF END was not received within the timeout period or ud is a board descriptor and Device Clear was received after the read operation began Board level The GPIB is not correctly addressed use ibcmd to address the GPIB Device level A conflict exists between the device GPIB address and the GPIB address of the device access board Use ibpad and ibsad Device level No devices are connected to the GPIB Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 Either ud is invalid or the GPIB driver is not installed ibraf could not access 1name The interface board is not installed or is not properly configured Asynchronous I O is in progress National Instruments Corporation 1 55 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBRPP IBRPP Board Level Device Level Purpose Conduct a parallel poll Format C int ibrpp int ud char ppr Visual Basic CALL ibrpp ud ppr or status ilrpp ud ppr Input ud Board or device descriptor Output ppr Parallel poll response byte Function Return The value of ibsta Description ibrpp pa
81. f SRQ is asserted Otherwise result contains a zero Use Test SRQ to get the current state of the GPIB SRQ line Use WaitSRQ to wait until SRQ is asserted Possible Errors EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 2 34 ni com Functions for Multithreaded Applications This chapter lists the extra functions designed for multithreaded applications and describes the purpose format and input and output parameters for each function For general programming information refer to the GPIB User Manual for Win32 The user manual explains how to develop and debug your program It also describes the example programs included with your GPIB software Function Names The functions in this chapter are listed alphabetically Purpose Each function description includes a brief statement of the purpose of the function Format The format section describes the format of each function in the following languages Microsoft Visual C C version 2 0 or later Borland C C version 4 0 or later Microsoft Visual Basic version 4 0 or later Input and Output The input and output parameters for each function are listed Function Return describes the return value of the function Description The description section gives details about the purpo
82. f a write See ibeot TbaHSCableLength 0 High speed HS488 data transfer is disabled 1 to 15 High speed HS488 data transfer is enabled The number returned represents the number of meters of GPIB cable in your system Refer to the GPIB User Manual for Win32 for information about high speed HS488 data transfer IbaIst The individual status ist bit of the board IbaPAD The current primary address of the board See ibpad IbaPP2 zero The board is in PP1 mode remote parallel poll configuration non zero The board is in PP2 mode local parallel poll configuration Refer to the GPIB User Manual for Win32 for more information about parallel polls IbaPPC The current parallel poll configuration information of the board See ibppc National Instruments Corporation 1 7 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBASK Table 1 3 ibask Board Configuration Parameter Options Continued Options Constants Returned Information IbaPPollTime 0 The board uses the standard duration 2 us when conducting a parallel poll 1 to 17 The board uses a variable length duration when conducting a parallel poll The duration values correspond to the ibtmo timing values IbaReadAdjust 0 Read operations do not have pairs of bytes swapped 1 Read operations do have each pair of bytes swapped IbaRsv The current serial
83. ge the primary address ibppe Parallel poll configure ibrd Read data from a device into a user buffer ibrda Read data asynchronously from a device into a user buffer ibrdf Read data from a device into a file ibrpp Conduct a parallel poll ibrsc Request or release system control ibrsv Request service and change the serial poll status byte ibsad Change or disable the secondary address ibsic Assert interface clear ibsre Set or clear the Remote Enable REN line ibstop Abort asynchronous I O operation ibtmo Change or disable the I O timeout period ibwait Wait for GPIB events ibwrt Write data to a device from a user buffer ibwrta Write data asynchronously to a device from a user buffer ibwrtf Write data to a device from a file NI 488 2M Function Reference Manual for Win32 1 4 ni com Chapter 1 NI 488 Functions IBASK IBASK Board Level Device Level Purpose Return information about software configuration parameters Format C int ibask int ud int option int value Visual Basic CALL ibask ud option value or status ilask ud option value Input ud Board or device unit descriptor option Selects the configuration item whose value is being requested Output value Current value of the selected configuration item Function Return The value of ibsta Description ibask returns the current value of various configuration parameters for the specified board or device The current value of the selected conf
84. gram mode A rudimentary board or device function that performs a single operation Meters The Message Available bit is part of the IEEE 488 2 defined status byte which is received from a device responding to a serial poll Megabytes of memory Resident in RAM A GPIB command used to address a device to be a Listener It can be any one of the 31 primary addresses The GPIB command used to address a device to be a Listener or a Talker when extended two byte addressing is used The complete address is an MLA or MTA address followed by an MSA address There are 31 secondary addresses for a total of 961 distinct listen or talk addresses for devices A GPIB command used to address a device to be a Talker It can be any one of the 31 primary addresses The concurrent processing of more than one program or task NI 488 2M Function Reference Manual for Win32 Glossary NDAC Not Data Accepted NRFD Not Ready For Data P parallel poll PIO PPC Parallel Poll Configure PPD Parallel Poll Disable PPE Parallel Poll Enable PPU Parallel Poll Unconfigure programmed I O R RAM resynchronize RQS One of the three GPIB handshake lines See also handshake One of the three GPIB handshake lines See also handshake The process of polling all configured devices at once and reading a composite poll response See also serial poll See programmed I O Parallel Poll Configure is the GPIB command
85. h the EOI line asserted after the last byte The actual number of bytes transferred is returned in the global variable ibcnt1 Possible Errors EABO The I O timeout period expired before all of the bytes were sent EARG Either an invalid address appears in addrlist or the addrlist is empty ibcnt1 is the index of the invalid address or the eotmode parameter is invalid The eotmode parameter can only be DABend NULLend or NLend If the buffer is empty an eotmode of DABend is disallowed EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 2 25 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines SendLLO SendLLO Purpose Send the Local Lockout LLO message to all devices Format C void SendLLO int boardID Visual Basic CALL SendLLO boardID Input boardID The interface board number Description SendLLo sends the GPIB Local Lockout LLO message to all devices While Local Lockout is in effect only the Controller In Charge can alter the state of the devices by sending appropriate GPIB messages SendLLO is reserved for use in unusual local remote situations In the typical case of placing the devices in Remote With Loc
86. he GPIB board is addressed correctly before calling ibrd ibwrt RcvRespMsg or SendDataBytes e Avoid calling ibgts except immediately after an ibcmd call ibcmd causes ATN to be asserted Solutions EARG results when an invalid argument is passed to a function call The following are some examples e ibtmo called with a value not in the range 0 through 17 ibeos called with meaningless bits set in the high byte of the second parameter e ibpad or ibsad called with invalid addresses e ibppc called with invalid parallel poll configurations e A board level NI 488 call made with a valid device descriptor or a device level NI 488 call made with a board descriptor An NI 488 2 routine called with an invalid address e PPollConfig called with an invalid data line or sense bit Possible solutions for this error are as follows e Make sure that the parameters passed to the NI 488 function or NI 488 2 routine are valid e Do not use a device descriptor in a board function or vice versa NI 488 2M Function Reference Manual for Win32 C 4 ni com ESAC 5 Appendix C Error Codes and Solutions Solutions EABO 6 ESAC results when ibsic ibsre SendIFC or EnableRemote is called when the GPIB board does not have System Controller capability Give the GPIB board System Controller capability by calling ibrsc 1 or by using the GPIB Configuration utility to configure that capability into the software S
87. ia the GPIB board and other devices on the GPIB The address of the GPIB board from the point of view of the CPU as opposed to the GPIB address of the GPIB board Also called port address or board address After each NI 488 I O function this global variable contains the actual number of bytes transmitted A global variable that contains the specific error code associated with a function call that failed At the end of each function call this global variable status word contains status information Institute of Electrical and Electronic Engineers A broadcast message sent from the Controller to all devices and used to manage the GPIB An Individual Status bit of the status byte used in the Parallel Poll Configure function NI 488 2M Function Reference Manual for Win32 G 4 ni com L LAD listen address language interface Listener LLO Local Lockout low level function MAV MB memory resident MLA My Listen Address MSA My Secondary Address MTA My Talk Address multitasking National Instruments Corporation G 5 Glossary See MLA Code that enables an application program that uses NI 488 functions or NI 488 2 routines to access the driver A GPIB device that receives data messages from a Talker The GPIB command used to tell all devices that they may or should ignore remote GPIB data messages or local front panel controls depending on whether the device is in local or remote pro
88. iguration item is returned in the integer value Tables 1 3 and 1 4 list the valid configuration parameter options for ibask Possible Errors EARG option is not a valid configuration parameter See the ibask options listed in Tables 1 3 and 1 4 ECAP option does not work with the driver or the board is not configured correctly EDVR Either ud is invalid or the GPIB driver is not installed EOIP Asynchronous I O is in progress National Instruments Corporation 1 5 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBASK Table 1 3 lists the options you can use with ibask when ud is a board descriptor or a board index An alphabetical list of the option constants follows IbaAUTOPOLL IbaCICPROT IbaDMA IbaEndBitIsNormal TbaEOSchar TbaEOScmp IbaEOSrd TbaEOSwrt IbaEOT TbaHSCableLength IbaIst IbaPAD IbaPP2 IbaPPC E IbaPPollTime TbaReadAdjust TbaRsv TbaSAD IbaSc TbaSendLLO s TbaSRE he IbaTIMING IbaTMO IbaWriteAdjust Table 1 3 ibask Board Configuration Parameter Options Options Constants Returned Information IbaAUTOPOLL zero Automatic serial polling is disabled non zero Automatic serial polling is enabled Refer to the GPIB User Manual for Win32 for more information about automatic serial polling IbaCICPROT zero The CIC protocol is disabled non zero The CIC protocol is enabled Refer to the
89. imary GPIB address it must be in the range 0 to 30 EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 46 ni com IBPCT Chapter 1 Device Level NI 488 Functions IBPCT Purpose Format Pass control to another GPIB device with Controller capability C int ibpct int ud Visual Basic CALL ibpct ud or status ilpct ud Input ud Device descriptor Output Function Return The value of ibsta Description ibpct passes Controller in Charge status to the device indicated by ud The access board automatically unasserts the ATN line and goes to Controller Idle State CIDS This function assumes that the device has Controller capability Possible Errors National Instruments Corporation 1 47 EARG ud is valid but does not refer to a device EBUS No devices are connected to the GPIB ECIC The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBPPC IBPPC Board Level D
90. iod ibtrg Trigger selected device ibwait Wait for GPIB events ibwrt Write data to a device from a user buffer ibwrta Write data asynchronously to a device from a user buffer ibwrtf Write data to a device from a file Table 1 2 NI 488 Board Level Functions Function Purpose ibask Return information about software configuration parameters ibcac Become Active Controller ibcmd Send GPIB commands ibcmda Send GPIB commands asynchronously ibconfig Change the software configuration parameters ibdma Enable or disable DMA ibeos Configure the end of string EOS termination mode or character ibeot Enable or disable the automatic assertion of the GPIB EOI line at the end of write I O operations ibfind Open and initialize a GPIB board National Instruments Corporation 1 3 NI 488 2M Function Reference Manual for Win32 NI 488 Functions List of NI 488 Functions Chapter 1 NI 488 Functions List of NI 488 Functions Table 1 2 NI 488 Board Level Functions Continued Function Purpose ibgts Go from Active Controller to Standby ibist Set or clear the board individual status bit for parallel polls iblines Return the status of the eight GPIB control lines ibln Check for the presence of a device on the bus ibloc Go to local ibnotify Notify user of one or more GPIB events by invoking the user callback ibonl Place the interface board online or offline ibpad Chan
91. ion call that contains the unit descriptor of the GPIB interface board or other GPIB device that is the object of the function The GPIB command used to unaddress any active Listeners The GPIB command used to unaddress an active Talker NI 488 2M Function Reference Manual for Win32 G 8 ni com Index A address functions IBPAD 1 46 IBSAD 1 61 AllSpoll routine 2 4 asynchronous operations halting 1 64 ATN status word condition B 4 board configuration parameter options See configuration options board level functions table 1 3 to 1 4 C callback 1 41 to 1 44 CIC status word condition B 4 clear functions and routines DevClear 2 5 DevClearList 2 6 IBCLR 1 14 IBIST 1 34 IBSIC 1 62 IBSRE 1 63 SendIFC 2 24 CMPL status word condition B 3 command functions and routines IBCMD 1 15 IBCMDA 1 16 to 1 17 SendCmds 2 22 configuration functions IBASK 1 5 to 1 10 IBCONFIG 1 18 to 1 23 O National Instruments Corporation configuration options IBASK function board configuration parameter options 1 6 to 1 8 device configuration parameter options 1 9 to 1 10 IBCONFIG function board level configuration options 1 19 to 1 21 device level configuration options 1 22 to 1 23 control line status 1 35 to 1 36 controller functions and routines IBCAC 1 12 to 1 13 IBGTS 1 32 to 1 33 IBPCT 1 47 IBRSC 1 57 PassControl 2 11 D DCAS status word condition B 5 DevClear routine 2 5 DevClearList routi
92. ions Constants Returned Information IbaBNA The index of the GPIB access board used by the given device descriptor TbaEOSchar The current EOS character of the device See ibeos TbaEOScmp zero A 7 bit compare is used for all EOS comparisons non zero An 8 bit compare is used for all EOS comparisons See ibeos TbaEOSrd zero The EOS character is ignored during read operations non zero Read operation will be terminated by the EOS character See ibeos TbaEOSwrt zero The EOI line is not asserted when the EOS character is sent during a write operation non zero The EOI line is asserted when the EOS character is sent during a write See ibeos IbaEOT zero The GPIB EOI line is not asserted at the end of a write operation non zero EOI is asserted at the end of a write See ibeot IbaPAD The current primary address of the device See ibpad TbaReadAdjust 0 Read operations do not have pairs of bytes swapped 1 Read operations do have each pair of bytes swapped IbaREADDR zero No unnecessary addressing is performed between device level read and write operations non zero Addressing is always performed before a device level read or write operation National Instruments Corporation 1 9 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBASK Table 1 4 ibask Device Configuration Parameter
93. isual Basic CALL ReadStatusByte boardID address result Input boardID The interface board number address A device address Output result Serial poll response byte Description ReadStatusByte serial polls the device described by address The response byte is stored in result Possible Errors EABO The device times out instead of responding to the serial poll EARG The address parameter is invalid EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 2 17 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines Receive Receive Purpose Read data bytes from a device Format C void Receive int boardID Addr4882_t address void buffer long count int termination Visual Basic CALL Receive boardID address buffers termination Input boardID The interface board number address Address of a device to receive data count Number of bytes to read termination Description of the data termination mode STOPend or an EOS character Output buffer Stores the received data bytes Description Receive addresses the device described by address to talk and the interface board to listen Then up to count bytes are read and place
94. l Configure This multiline interface message is a proposed extension to the IEEE 488 1 specification to support the HS488 high speed protocol NI 488 2M Function Reference Manual for Win32 A 4 ni com Status Word Conditions This appendix gives a detailed description of the conditions reported in the status word ibsta For information about how to use ibsta in your application program refer to Chapter 3 Developing Your Application of the GPIB User Manual for Win32 Each bit in ibsta can be set for device calls dev board calls brd or both dev brd The following table shows the status word layout Mnemonic Kalo Hex Value Type Description ERR 15 8000 dev brd GPIB error TIMO 14 4000 dev brd Time limit exceeded END 13 2000 dev brd END or EOS detected SRQI 12 1000 brd SRQ interrupt received RQS 11 800 dev Device requesting service CMPL 8 100 dev brd VO completed LOK 7 80 brd Lockout State REM 6 40 brd Remote State CIC 5 20 brd Controller In Charge ATN 4 10 brd Attention is asserted TACS 3 8 brd Talker LACS 2 4 brd Listener DTAS 1 2 brd Device Trigger State DCAS 0 1 brd Device Clear State National Instruments Corporation B 1 NI 488 2M Function Reference Manual for Win32 Appendix B Status Word Conditions ERR dev brd ERR is set in the status word following any call that results in an error You can determine the particular error by ex
95. l to another device with Controller capability PPoll Perform a parallel poll on the GPIB PPollConfig Configure a device for parallel polls PPollUnconfig Unconfigure devices for parallel polls RcvRespMsg Read data bytes from a device that is already addressed to talk NI 488 2M Function Reference Manual for Win32 2 2 ni com Chapter 2 Table 2 1 NI 488 2 Routines Continued Routine Purpose ReadStatusByte Serial poll a single device Receive Read data bytes from a device ReceiveSetup Address a device to be a Talker and the interface board to be a Listener in preparation for RcvRespMsg ResetSys Reset and initialize IEEE 488 2 compliant devices Send Send data bytes to a device SendCmds Send GPIB command bytes SendDataBytes Send data bytes to devices that are already addressed to listen SendIFC Reset the GPIB by sending interface clear SendList Send data bytes to multiple GPIB devices SendL LO Send the Local Lockout LLO message to all devices SendSetup Setup devices to receive data in preparation for SendDataBytes SetRWLS Place devices in remote with lockout state TestSRQ Determine the current state of the GPIB Service Request SRQ line TestSys Cause the IEEE 488 2 compliant devices to conduct self tests Trigger Trigger a device TriggerList Trigger multiple devices WaitSRQ Wait until a device asserts the GPIB Service Request SRQ line
96. le for any damages arising out of or related to this document or the information contained in it EXCEPT AS SPECIFIED HEREIN NATIONAL INSTRUMENTS MAKES NO WARRANTIES EXPRESS OR IMPLIED AND SPECIFICALLY DISCLAIMS ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE CUSTOMER S RIGHT TO RECOVER DAMAGES CAUSED BY FAULT OR NEGLIGENCE ON THE PART OF NATIONAL INSTRUMENTS SHALL BE LIMITED TO THE AMOUNT THERETOFORE PAID BY THE CUSTOMER NATIONAL INSTRUMENTS WILL NOT BE LIABLE FOR DAMAGES RESULTING FROM LOSS OF DATA PROFITS USE OF PRODUCTS OR INCIDENTAL OR CONSEQUENTIAL DAMAGES EVEN IF ADVISED OF THE POSSIBILITY THEREOF This limitation of the liability of National Instruments will apply regardless of the form of action whether in contract or tort including negligence Any action against National Instruments must be brought within one year after the cause of action accrues National Instruments shall not be liable for any delay in performance due to causes beyond its reasonable control The warranty provided herein does not cover damages defects malfunctions or service failures caused by owner s failure to follow the National Instruments installation operation or maintenance instructions owner s modification of the product owner s abuse misuse or negligent acts and power failure or surges fire flood accident actions of third parties or other events outside reasonable control Copyright Under the copyright laws this public
97. lled ENEB The interface board is not installed or is not properly configured National Instruments Corporation 1 25 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBDMA IBDMA Board Level Purpose Enable or disable DMA Format C int ibdma int ud int v Visual Basic CALL ibdma ud v or status ildma ud v Input ud A board descriptor v Enable or disable the use of DMA Output Function Return The value of ibsta Description ibdma enables or disables DMA transfers for the board according to v If v is zero then DMA is not used for GPIB I O transfers If v is non zero then DMA is used for GPIB I O transfers Possible Errors EARG ECAP EDVR ENEB EOIP ud is valid but does not refer to an interface board The interface board is not configured to use a DMA channel Use the GPIB Configuration utility to configure a DMA channel Either ud is invalid or the GPIB driver is not installed The interface board is not installed or is not properly configured Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 26 ni com Chapter 1 NI 488 Functions IBEOS IBEOS Board Level Device Level Purpose Configure the end of string EOS termination mode or character Format C int ibeos int ud int v Visual Basic CALL ibeos ud v or status ileos ud v Input ud A board or device descriptor v EOS mode and charac
98. mail to techpubseni com O 1995 2004 National Instruments Corporation All rights reserved Important Information Warranty The media on which you receive National Instruments software are warranted not to fail to execute programming instructions due to defects in materials and workmanship for a period of 90 days from date of shipment as evidenced by receipts or other documentation National Instruments will at its option repair or replace software media that do not execute programming instructions if National Instruments receives notice of such defects during the warranty period National Instruments does not warrant that the operation of the software shall be uninterrupted or error free A Return Material Authorization RMA number must be obtained from the factory and clearly marked on the outside of the package before any equipment will be accepted for warranty work National Instruments will pay the shipping costs of returning to the owner parts which are covered by warranty National Instruments believes that the information in this document is accurate The document has been carefully reviewed for technical accuracy In the event that technical or typographical errors exist National Instruments reserves the right to make changes to subsequent editions of this document without prior notice to holders of this edition The reader should consult National Instruments if errors are suspected In no event shall National Instruments be liab
99. manual explains how to develop and debug your program It also describes the example programs included with your GPIB software Function Names The functions in this chapter are listed alphabetically Each function is designated as board level device level or both Purpose Each function description includes a brief statement of the purpose of the function Format The format section describes the format of each function in the following languages Microsoft Visual C C version 2 0 or later Borland C C version 4 0 or later and Microsoft Visual Basic version 4 0 or later Input and Output The input and output parameters for each function are listed Function Return describes the return value of the function Description The description section gives details about the purpose and effect of each function National Instruments Corporation 1 1 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions Examples Examples Some function descriptions include sample code showing how to use the function For more detailed and complete examples refer to the example programs that are included with your GPIB software The example programs are described in Chapter 2 Application Examples of the GPIB User Manual for Win32 Possible Errors Each function description includes a list of errors that could occur when it is invoked List of NI 488 Functions The following tables cont
100. n the software and a call is made that requires the capability Check the validity of the call or make sure your GPIB interface board and the driver both have the needed capability Solutions EBUS 14 EFSO results when an ibrdf or ibwrt call encounters a problem performing a file operation Specifically this error indicates that the function is unable to open create seek write or close the file being accessed The specific operating system error code for this condition is contained in ibentl Possible solutions for this error are as follows Make sure the filename path and drive that you specified are correct Make sure that the access mode of the file is correct Make sure there is enough room on the disk to hold the file EBUS results when certain GPIB bus errors occur during device functions All device functions send command bytes to perform addressing and other bus management Devices are expected to accept these command bytes within the time limit specified by the default configuration or the ibtmo function EBUS results if a timeout occurred while sending these command bytes O National Instruments Corporation C 7 NI 488 2M Function Reference Manual for Win32 Appendix C Error Codes and Solutions Solutions ESTB 15 Possible solutions for this error are as follows e Verify that the instrument is operating correctly e Check for loose or faulty cabling or several powered off instruments on th
101. nction Reference Manual for Win32 2 30 ni com Chapter 2 NI 488 2 Routines TestSys ENEB The interface board is not installed or is not properly configured ENOL No Listeners are on the GPIB EOIP Asynchronous I O is in progress National Instruments Corporation 2 31 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines Trigger Trigger Purpose Trigger a device Format C void Trigger int boardID Addr4882_t address Visual Basic CALL Trigger boardID address Input boardID The interface board number address Address of a device to be triggered Description Trigger sends the Group Execute Trigger GET GPIB message to the device described by address If address is the constant NOADDR then the GET message is sent to all devices that are currently listen active on the GPIB Possible Errors EARG The address parameter is invalid EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 2 32 ni com Chapter 2 NI 488 2 Routines TriggerList TriggerList Purpose Trigger multiple devices Format C void TriggerList int boardID Addr4882_t addrlist Visual Basic CALL TriggerList boardID
102. ne 2 6 device configuration parameter options See configuration options device level functions table 1 2 to 1 3 diagnostic tools NI resources D 1 DMA function 1 26 documentation conventions used in manual xi how to use manual set ix to x NI resources D 1 organization of manual x related documentation xi drivers NI resources D 1 DTAS status word condition B 5 NI 488 2M Function Reference Manual for Win32 E EABO error code C 5 EADR error code C 4 EARG error code C 4 EBUS error code C 7 to C 8 ECAP error code C 7 ECIC error code C 2 to C 3 EDMA error code C 6 EDVR error code C 2 EFSO error code C 7 EnableLocal routine 2 7 EnableRemote routine 2 8 END status word condition B 2 ENEB error code C 5 ENOL error code C 3 EOI line enabling or disabling 1 28 EOIP error code C 6 EOS byte defining 1 27 EOS configurations 1 28 ERR status word condition B 2 error codes C 1 to C 9 See also specific functions and routines ESAC error code C 5 ESRQ error code C 8 to C 9 ESTB error code C 8 ETAB error code C 9 examples NI resources D 1 F fax on demand support D 2 FindLstn routine 2 9 FindRQS routine 2 10 functions See NI 488 functions and functions for multithreaded applications functions for multithreaded applications alphabetical list of functions table 3 2 ThreadIbent 3 3 NI 488 2M Function Reference Manual for Win32 1 2 ThreadIbentl 3 4 Threadlberr 3 5 Threadlbs
103. nfigures all the devices described by addr1ist for parallel polls If addrlist contains only the constant NOADDR then the Parallel Poll Unconfigure PPU GPIB message is sent to all GPIB devices The devices unconfigured by this function do not participate in subsequent parallel polls For more information about parallel polling refer to the GPIB User Manual for Win32 Possible Errors EARG An invalid address appears in addrlist ibcnt1 is the index of the invalid address in the addrlist array EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 2 14 ni com Chapter 2 NI 488 2 Routines RcvRespMsg RevRespMsg Purpose Read data bytes from a device that is already addressed to talk Format C void RcvRespMsg int boardID void buffer long count int termination Visual Basic CALL RcvRespMsg boardID buffer termination Input boardID The interface board number count Number of bytes read termination Description of the data termination mode STOPend or an 8 bit EOS character Output buffer Stores the received data bytes Description RcvRespMsg reads up to count bytes from the GPIB and places these bytes into buffer Data by
104. nous I O is in progress NI 488 2M Function Reference Manual for Win32 1 14 ni com Chapter 1 IBCMD Board Level NI 488 Functions IBCMD Purpose Format Send GPIB commands C int ibcmd int ud void cmdbuf long count Visual Basic CALL ibcmd ud cmdbuf or status ilcmd ud cmdbuf count amp Input ud A board unit descriptor cmdbuf Buffer of command bytes to send count Number of command bytes to send Output Function Return The value of ibsta Description ibcmd sends count bytes from cmdbuf over the GPIB as command bytes interface messages The number of command bytes transferred is returned in the global variable ibcnt1 Refer to Table A 1 Multiline Interface Messages the definitions of interface messages Command bytes are used to configure the state of the GPIB They are not used to send instructions to GPIB devices Use ibwrt to send device specific instructions Possible Errors EABO The timeout period expired before all of the command bytes were sent EARG ud is valid but does not refer to an interface board ECIC The interface board is not Controller In Charge EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured ENOL No Listeners are on the GPIB EOIP Asynchronous I O is in progress National Instruments Corporation 1 15 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488
105. ode until it receives its listen address Possible Errors EARG ud is a valid descriptor but does not refer to a board EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress ESAC The board does not have System Controller capability National Instruments Corporation 1 63 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBSTOP IBSTOP Board Level Device Level Purpose Abort asynchronous I O operation Format C int ibstop int ud Visual Basic CALL ibstop ud or status ilstop ud Input ud Board or device descriptor Output Function Return The value of ibsta Description The ibstop function aborts any asynchronous read write or command operation that is in progress and resynchronizes the application with the driver If asynchronous I O is in progress the error bit is set in the status word ibsta and EABO is returned indicating that the I O was successfully stopped Possible Errors EABO Asynchronous I O was successfully stopped EBUS Device level No devices are connected to the GPIB EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured NI 488 2M Function Reference Manual for Win32 1 64 ni com IBTMO Board Level Device Level Chapter 1 NI 488 Functions I
106. olutions ENEB 7 EABO indicates that an I O operation has been canceled usually due to a timeout condition Other causes are calling ibstop or receiving the Device Clear message from the CIC while performing an I O operation Frequently the I O is not progressing the Listener is not continuing to handshake or the Talker has stopped talking or the byte count in the call which timed out was more than the other device was expecting Possible solutions for this error are as follows e Use the correct byte count in input functions or have the Talker use the END message to signify the end of the transfer e Lengthen the timeout period for the I O operation using ibtmo Make sure that you have configured your device to send data before you request data Solutions ENEB occurs when no GPIB board exists at the I O address specified in the configuration program This problem happens when the board is not physically plugged into the system the I O address specified during configuration does not match the actual board setting or there is a system conflict with the base I O address Make sure there is a GPIB board in your computer that is properly configured both in hardware and software using a valid base I O address National Instruments Corporation C 5 NI 488 2M Function Reference Manual for Win32 Appendix C Error Codes and Solutions EDMA 8 EDMA occurs if a system DMA error is encountered when the GPIB software a
107. on 1 74 to 1 75 NI 488 2 routines AllSpoll 2 4 alphabetical list of routines table 2 2 to 2 3 DevClear 2 5 O National Instruments Corporation 1 5 DevClearList 2 6 EnableLocal 2 7 EnableRemote 2 8 FindLstn 2 9 FindRQS 2 10 PassControl 2 11 PPoll 2 12 PPollConfig 2 13 PPollUnconfig 2 14 RevRespMsg 2 15 to 2 16 ReadStatusByte 2 17 Receive 2 18 ReceiveSetup 2 19 ResetSys 2 20 Send 2 21 SendCmds 2 22 SendDataBytes 2 23 SendIFC 2 24 SendList 2 25 SendLLO 2 26 SendSetup 2 27 SetRWLS 2 28 TestSRQ 2 29 TestSys 2 30 to 2 31 Trigger 2 32 TriggerList 2 33 WaitSRQ 2 34 NI support and services D 1 notify function 1 41 to 1 44 notify mask layout table 1 42 0 online offline function 1 45 P parallel polling functions and routines IBIST 1 34 IBPPC 1 48 to 1 49 IBRPP 1 56 NI 488 2M Function Reference Manual for Win32 PPoll 2 12 PPollConfig 2 13 PPollUnconfig 2 14 PassControl routine 2 11 PPoll routine 2 12 PPollConfig routine 2 13 PPollUnconfig routine 2 14 primary address changing 1 46 programming examples NI resources D 1 R RevRespMsg routine 2 15 to 2 16 read functions IBRD 1 50 to 1 51 IBRDA 1 52 to 1 53 IBRDF 1 54 to 1 55 ReadStatusByte routine 2 17 Receive routine 2 18 ReceiveSetup routine 2 19 REM status word condition B 4 remote functions and routines EnableRemote 2 8 IBSRE 1 63 SetRWLS 2 28 ResetSys routine 2 20 routines See
108. on This step is accomplished by sending the message RST n to the devices described by addrlist Possible Errors EABO T O operation is aborted EARG Either an invalid address appears in addrlist or addrlist is empty ibcnt1 is the index of the invalid address in the addrlist array EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured ENOL No Listeners are on the GPIB EOIP Asynchronous I O is in progress ESAC The board is not System Controller NI 488 2M Function Reference Manual for Win32 2 20 ni com Chapter 2 NI 488 2 Routines Send Send Purpose Send data bytes to a device Format C void Send int boardID Addr4882_t address void buffer long count int eotmode Visual Basic CALL Send boardID address buffer eotmode Input boardID The interface board number address Address of a device to which data is sent buffer The data bytes to be sent count Number of bytes to be sent eotmode The data termination mode DABend NULLend or NLend Description Send addresses the device described by address to listen and the interface board to talk Then count bytes from buf fer are sent to the device The last byte is sent with the EOI line asserted if eotmode is DABend The last byte is sent without th
109. on utility Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 for more information about the CIC protocol IbcDMA Identical to ibdma Default determined by the GPIB Configuration utility Ibe EndBitIsNormal zero Do not set the END bit of ibsta when an EOS match occurs during a read non zero Set the END bit of ibsta when an EOS match occurs during a read Default non zero National Instruments Corporation 1 19 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBCONFIG Table 1 5 ibconfig Board Configuration Parameter Options Continued Options Constants Legal Values IbcEOSchar Any 8 bit value This byte becomes the new EOS character Default determined by the GPIB Configuration utility TbcEOScmp zero Use 7 bits for the EOS character comparison non zero Use 8 bits for the EOS character comparison Default determined by the GPIB Configuration utility IbcEOSrd zero Ignore EOS character during read operations non zero Terminate reads when the EOS character is read Default determined by the GPIB Configuration utility TbcEOSwrt zero Do not assert EOI with the EOS character during write operations non zero Assert EOI with the EOS character during write operations Default determined by the GPIB Configuration utility
110. only when EOI is asserted In this mode if the I O operation completes because of the EOS character by itself END is not set The application should check the last byte of the received buffer to see if it is the EOS character NI 488 2M Function Reference Manual for Win32 B 2 ni com SRAI brd Appendix B Status Word Conditions RQS dev SRQI indicates that a GPIB device is requesting service SRQI is set whenever the GPIB board is CIC the GPIB SRQ line is asserted and the automatic serial poll capability is disabled SRQI is cleared either when the GPIB board ceases to be the CIC or when the GPIB SRQ line is unasserted RQS appears in the status word only after a device level call and indicates that the device is requesting service RQS is set whenever one or more positive serial poll response bytes have been received from the device A positive serial poll response byte always has bit 6 asserted Automatic serial polling must be enabled it is enabled by default for RQS to automatically appear in ibsta You also can wait for a device to request service regardless of the state of automatic serial polling by calling ibwait witha mask that contains RQS Do not issue an ibwait call on RQS for a device that does not respond to serial polls Use ibrsp to acquire the serial poll response byte that was received RQS is cleared when all of the stored serial poll response bytes have been reported to you through the ibrsp function CMPL
111. or is not properly configured National Instruments Corporation 1 31 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBGTS IBGTS Board Level Purpose Go from Active Controller to Standby Format C int ibgts int ud int v Visual Basic CALL ibgts ud v or status ilgts ud v Input ud Board descriptor v Determines whether to perform acceptor handshaking Output Function Return The value of ibsta Description ibgts causes the GPIB board at ud to go to Standby Controller and the GPIB ATN line to be unasserted If v is non zero acceptor handshaking or shadow handshaking is performed until END occurs or until ATN is reasserted by a subsequent ibcac call With this option the GPIB board can participate in data handshake as an acceptor without actually reading data If END is detected the interface board enters a Not Ready For Data NRFD handshake holdoff state which results in hold off of subsequent GPIB transfers If v is 0 no acceptor handshaking or holdoff is performed Before performing an ibgts with shadow handshake call the ibeos function to establish proper EOS modes For details on the IEEE 488 1 handshake protocol refer to the ANSI IEEE Standard 488 1 1987 IEEE Standard Digital Interface for Programmable Instrumentation NI 488 2M Function Reference Manual for Win32 1 32 ni com Possible Errors EADR EARG ECIC EDVR ENEB EOIP Chapter 1 NI 488 Functions
112. ormat C void DevClear int boardID Addr4882_t address Visual Basic CALL DevClear boardID address Input boardID The interface board number address Address of the device you want to clear Description DevClear sends the Selected Device Clear SDC GPIB message to the device described by address If address is the constant NOADDR then the Universal Device Clear DCL message is sent to all devices Possible Errors EARG The address parameter is invalid EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 2 5 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines DevClearList DevClearList Purpose Clear multiple devices Format C void DevClearList int boardID Addr4882_t addrlist Visual Basic CALL DevClearList boardID addrlist Input boardID The interface board number addrlist A list of device addresses terminated by NOADDR that you want to clear Description DevClearList sends the Selected Device Clear SDC GPIB message to all the device addresses described by addrlist If addrlist contains only the constant NOADDR then the Universal Device Clear DCL message is sent to all the devices on the b
113. ot match the GPIB address of any device connected to the bus that the GPIB cable is not connected to the device or that the device is not powered on ENOL can occur in situations where the GPIB board is not the CIC and the Controller asserts ATN before the write call in progress has ended Solutions Possible solutions for this error are as follows National Instruments Corporation Make sure that the GPIB address of your device matches the GPIB address of the device to which you want to write data Use the appropriate hex code in ibcmd to address your device Check your cable connections and make sure at least two thirds of your devices are powered on Call ibpad or ibsad if necessary to match the configured address to the device switch settings Reduce the write byte count to that which is expected by the Controller C 3 NI 488 2M Function Reference Manual for Win32 Appendix C Error Codes and Solutions EADR 3 Solutions EARG 4 EADR occurs when the GPIB board is CIC and is not properly addressing itself before read and write functions This error is usually associated with board level functions EADR is also returned by the function ibgts when the shadow handshake feature is requested and the GPIB ATN line is already unasserted In this case the shadow handshake is not possible and the error is returned to notify you of that fact Possible solutions for this error are as follows e Make sure that t
114. printf REN is asserted Possible Errors EARG ud is valid but does not refer to an interface board EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 36 ni com Chapter 1 NI 488 Functions IBLN IBLN Board Level Device Level Purpose Check for the presence of a device on the bus Format C int ibln int ud int pad int sad short listen Visual Basic CALL ibln ud pad sad listen or status illn ud pad sad listen Input ud Board or device descriptor pad The primary GPIB address of the device sad The secondary GPIB address of the device Output listen Indicates if a device is present or not Function Return The value of ibsta Description ibln determines whether there is a listening device at the GPIB address designated by the pad and sad parameters If ud is a board descriptor then the bus associated with that board is tested for Listeners If ud is a device descriptor then ibl1n uses the access board associated with that device to test for Listeners If a Listener is detected a non zero value is returned in listen If no Listener is found zero is returned The pad parameter can be any valid primary address a value between 0 and 30 The sad parameter can be any valid secondary address a value between 96
115. put Function Return The value of ibsta Description If mask is non zero ibnotify monitors the events specified by mask and when one or more of the events is true your Callback is invoked The ibnotify mask bits are identical to the ibsta bits and are defined in Table 1 8 For a board level ibnotify call all mask bits are valid except for ERR and RQS For a device level ibnotify call the only valid mask bits are CMPL TIMO END and RQS If TIMO is set in the notify mask ibnotify calls the callback function when the timeout period has elapsed if one or more of the other specified events have not already occurred If TIMO is not set in the notify mask then the callback is not called until one or more of the specified events occur National Instruments Corporation 1 41 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBNOTIFY Table 1 8 Notify Mask Layout Bit Hex Mnemonic Position Value Description TIMO 14 4000 Use the timeout period see ibtmo to limit the notify period END 13 2000 END or EOS is detected SRQI 12 1000 SRQ is asserted board only RQS 11 800 Device requested service device only CMPL 8 100 I O completed LOK 7 80 GPIB board is in Lockout State board only REM 6 40 GPIB board is in Remote State board only CIC 5 20 GPIB board is CIC board only ATN 4 10 Attention is asserted board only TACS 3 8 GP
116. r is used as an instrument Device Level Unless the REN Remote Enable line has been unasserted with the ibsre function all device level functions automatically place the specified device in remote program mode ibloc is used to move devices temporarily from a remote program mode to a local mode until the next device function is executed on that device National Instruments Corporation 1 39 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBLOC Possible Errors EBUS Device level No devices are connected to the GPIB ECIC Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 40 ni com Chapter 1 NI 488 Functions IBNOTIFY IBNOTIFY Board Level Device Level Purpose Notify user of one or more GPIB events by invoking the user callback Format C int ibnotify int ud int mask GpibNotifyCallback_t Callback void RefData Visual Basic Not supported Input ud Board or device descriptor mask Bit mask of GPIB events to notice Callback Pointer to the callback function see prototype below RefData User defined reference data for the callback Out
117. r when another Controller passes control to the GPIB board CIC is cleared either when the GPIB board detects Interface Clear IFC from the System Controller or when the GPIB board passes control to another device TACS brd ATN indicates the state of the GPIB Attention ATN line ATN is set whenever the GPIB ATN line is asserted and it is cleared when the ATN line is unasserted TACS indicates whether the GPIB board is addressed as a Talker TACS is set whenever the GPIB board detects that its talk address and secondary address if enabled has been sent either by the GPIB board itself or by another Controller TACS is cleared whenever the GPIB board detects the Untalk UNT command its own listen address a talk address other than its own talk address or Interface Clear IFC NI 488 2M Function Reference Manual for Win32 B 4 ni com Appendix B Status Word Conditions LACS brd LACS indicates whether the GPIB board is addressed as a Listener LACS is set whenever the GPIB board detects that its listen address and secondary address if enabled has been sent either by the GPIB board itself or by another Controller LACS is also set whenever the GPIB board shadow handshakes as a result of the ibgts function LACS is cleared whenever the GPIB board detects the Unlisten UNL command its own talk address Interface Clear IFC or that the ibgts function has been called without shadow handshake DTAS brd DTAS in
118. rallel polls all the devices on the GPIB The result of this poll is returned in ppr For more information about parallel polling refer to the GPIB User Manual for Win32 Possible Errors EBUS Device level No devices are connected to the GPIB ECIC Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 56 ni com IBRSC Chapter 1 NI 488 Functions IBRSC Board Level Purpose Format Request or release system control C int ibrsc int ud int v Visual Basic CALL ibrsc ud v or status ilrsc ud v Input ud Board descriptor v Determines if system control is to be requested or released Output Function Return The value of ibsta Description ibrsc requests or releases the capability to send Interface Clear IFC and Remote Enable REN messages to devices If v is zero the board releases system control and functions requiring System Controller capability are not allowed If v is non zero functions requiring System Controller capability are subsequently allowed If no error occurs during the call then iberr contains the previous System Controller state of the boa
119. ration v NI 488 2M Function Reference Manual for Win32 Contents IBRDA O ea see hoes besos Bates 1 52 IBRDE aci a Rk Hees 1 54 DP II leestdaadeve need Metres Sus 1 56 IBRS E Goh ei el eee ios 1 57 TBRS Pia Ad EA eee 1 58 IBRS VA A A od 1 60 TBSAD ui tea A Dini A at EEEE T 1 61 IBC ia dde 1 62 TBSRE eee tcs 1 63 TBS TOR EEE AEAEE ted ds 1 64 IBM O ini a iia 1 65 TBTRG tonto ta EAT 1 67 BWAT cia A A it 1 68 IBWR Tal io 1 70 IBWRTA ica a 1 72 TB R TE ti oo 1 74 Chapter 2 NI 488 2 Routines Routine Names it A A a ds 2 1 PUTOS ida sn pis 2 1 A O 2 1 Inp t and Output tua A eed a ise ela i 2 1 DESCHIP EL OM ia is 2 2 Examples cia Ra i 2 2 Possible EtTOrS tii A a AS ee VEE oie 2 2 List of NI 488 2 Routines icicccccccevecvecccsessussaccoevestiavevsoscviasesosvctarsedsvencstsacsesvsstiaasysesned 2 2 ASPO marees ti its 2 4 Dey Cleat a rias 2 5 DevClearList aa tt cia 2 6 Enablel oca iii a A an heavens 2 7 EnableRemO te miii dit 2 8 Ends Middle 2 9 Bind ROS Bes iid sess ek cnet is ets es ibi dd inde 2 10 Pas G0 110 Reena Pr ts 2 11 PP MCR ROR rr CS EE a E 2 12 PRollContigw ate ai nds 2 13 PPOWUNCOMTIS ace 2 14 RevRespMSB to ais 2 15 ReadStatusBytenoniianiasiiaia T EEE 2 17 NO 2 18 Receive SetU cn litis 2 19 Res Sui Tia sees ri E a 2 20 NI 488 2M Function Reference Manual for Win32 vi ni com Multiline Interface Messages Appendix B Status Word Conditions Appendix C Error Codes and Solutions Appendix D
120. rd Possible Errors EARG ud is a valid descriptor but does not refer to a board EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 1 57 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBRSP IBRSP Device Level Purpose Conduct a serial poll Format C int ibrsp int ud char spr Visual Basic CALL ibrsp ud spr or status ilrsp ud spr Input ud Device descriptor Output spr Serial poll response byte Function Return The value of ibsta Description The ibrsp function is used to serial poll the device ud The serial poll response byte is returned in spr If bit 6 hex 40 of the response is set the device is requesting service When the automatic serial polling feature is enabled the device might have already been polled In this case ibrsp returns the previously acquired status byte For more information about serial polling refer to the GPIB User Manual for Win32 Possible Errors EABO The serial poll response could not be read within the serial poll timeout period EARG ud is a valid descriptor but does not refer to a device EBUS No devices are connected to the GPIB ECIC The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User
121. rface messages The number of command bytes transferred is returned in the global variable ibcnt1 Refer to Appendix A Multiline Interface Messages for a listing of the defined interface messages Use command bytes to configure the state of the GPIB not to send instructions to GPIB devices Use Send or SendList to send device specific instructions Possible Errors EABO The I O timeout period expired before all of the command bytes were sent ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured ENOL No devices are connected to the GPIB EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 2 22 ni com Chapter 2 NI 488 2 Routines SendDataBytes SendDataBytes Purpose Send data bytes to devices that are already addressed to listen Format C void SendDataBytes int boardID void buffer long count int eotmode Visual Basic CALL SendDataBytes boardID buffers eotmodes Input boardID The interface board number buffer The data bytes to be sent count Number of bytes to be sent eotmode The data termination mode DABend NULLend or NLend Description SendDataBytes sends count number of bytes from the buffer to devices which are already addressed to listen The last byte is sent with the EOI line asserted if eotmode is DABen
122. rite count Number of bytes to be written Output Function Return The value of ibsta Description Device Level If ud is a device descriptor ibwrt addresses the GPIB and writes count bytes from the memory location specified by wrtbuf to a GPIB device The operation terminates normally when count bytes have been sent The operation terminates with an error if count bytes could not be sent within the timeout period The actual number of bytes transferred is returned in the global variable ibent1 Board Level If ud is a board descriptor ibwrt writes count bytes of data from the buffer specified by wrtbuf to a GPIB device a board level ibwrt assumes that the GPIB is already properly addressed The operation terminates normally when count bytes have been sent The operation terminates with an error if count bytes could not be sent within the timeout period or if the board is not CIC the CIC sends Device Clear on the GPIB The actual number of bytes transferred is returned in the global variable ibent1 NI 488 2M Function Reference Manual for Win32 1 70 ni com Possible Errors EABO EADR EBUS ECIC EDVR ENEB ENOL EOIP Chapter 1 NI 488 Functions IBWRT Either count bytes were not sent within the timeout period or a Device Clear message was received after the write operation began Board level The GPIB is not correctly addressed use ibcmd to address the GPIB Device level A conflict exists between the device GPIB address an
123. s Central processing unit One of the three GPIB handshake lines See also handshake The GPIB command used to reset the device or internal functions of all devices See also SDC A function that combines several rudimentary board operations into one function so that the user does not have to be concerned with bus management or other GPIB protocol matters The GPIB lines that are used to transmit command or data bytes from one device to another Dynamic link library High speed data transfer between the GPIB board and memory that is not handled directly by the CPU Not available on some systems See also programmed I O Device driver software installed within the operating system ni com E END or END Message EOI EOS or EOS Byte EOT ESB G GET Group Execute Trigger GPIB GPIB address GPIB board GTL Go To Local National Instruments Corporation G 3 Glossary A message that signals the end of a data string END is sent by asserting the GPIB End or Identify EOD line with the last data byte A GPIB line that is used to signal either the last byte of a data message END or the parallel poll Identify IDY message A 7 or 8 bit end of string character that is sent as the last byte of a data message End of transmission The Event Status bit is part of the IEEE 488 2 defined status byte which is received from a device responding to a serial poll Group Execute Trigger is the GPIB
124. s You must mark the end of the list with the constant NOADDR An empty address list is either an array with only the NOADDR constant in it or a NULL pointer The C language interface header file includes the definition of a type typedef called Addr4882_t Use the Addr4882_t type when declaring addresses or address lists National Instruments Corporation 2 1 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines Description Description The description section gives details about the purpose and effect of each routine Examples For detailed and complete examples refer to the example programs that are included with your GPIB software The example programs are described in Chapter 2 Application Examples of the GPIB User Manual for Win32 Possible Errors Each routine description includes a list of errors that could occur when it is invoked List of NI 488 2 Routines Table 2 1 contains an alphabetical list of the NI 488 2 routines Table 2 1 NI 488 2 Routines Routine Purpose Al1Spoll Serial poll all devices DevClear Clear a single device DevClearList Clear multiple devices EnableLocal Enable operations from the front panel of devices leave remote programming mode EnableRemote Enable remote GPIB programming for devices FindLstn Find listening devices on GPIB FindRQS Determines which device is requesting service PassControl Pass contro
125. s information for each device configured for a parallel poll The interpretation of the status information is based on the latest parallel poll configuration command sent to each device see PPo11Config and PPo11Unconfig The Controller can use parallel polling to obtain one bit device dependent status messages from up to eight devices simultaneously For more information about parallel polling refer to the GPIB User Manual for Win32 Possible Errors EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 2 12 ni com Chapter 2 NI 488 2 Routines PPollContig PPollConfig Purpose Configure a device to respond to parallel polls Format C void PPollConfig int boardID Addr4882_t address int dataline int lineSense Visual Basic CALL PPollConfig boardID address dataline lineSense Input boardID The interface board number address Address of the device to be configured dataline Data line a value in the range of to 8 on which the device responds to parallel polls lineSense Sense either 0 or 1 of the parallel poll response Description PPol1Config configures the device described by address to respond to parallel polls by ass
126. s not installed ibwrtf could not access flname The interface board is not installed or is not properly configured Asynchronous I O is in progress National Instruments Corporation 1 75 NI 488 2M Function Reference Manual for Win32 NI 488 2 Routines This chapter lists the NI 488 2 routines and describes the purpose format input and output parameters and possible errors for each routine For general programming information refer to the GPIB User Manual for Win32 The user manual explains how to develop and debug your program It also describes the example programs included with your GPIB software Routine Names The routines in this chapter are listed alphabetically Purpose Each routine description includes a brief statement of the purpose of the routine Format The format section describes the format of each routine in the following languages Microsoft Visual C C version 2 0 or later Borland C C version 4 0 or later and Microsoft Visual Basic version 4 0 or later Input and Output The input and output parameters for each routine are also listed Most of the NI 488 2 routines have an input parameter which is either a single address or a list of addresses The address parameter is a 16 bit integer that has two components the low byte is a valid primary address 0 to 30 and the high byte is a valid secondary address NO_SAD 0 or 96 to 126 A list of addresses is an array of single addresse
127. se and effect of each function National Instruments Corporation 3 1 NI 488 2M Function Reference Manual for Win32 Chapter 3 Functions for Multithreaded Applications List of Functions List of Functions Table 3 1 contains an alphabetical list of the functions for multithreaded applications Table 3 1 Functions for Multithreaded Applications Function Purpose ThreadIbcnt Return the value of the thread specific ibent ThreadIbcntl Return the value of the thread specific ibent1 ThreadIberr Return the value of the thread specific iberr ThreadIbsta Return the value of the thread specific ibsta NI 488 2M Function Reference Manual for Win32 3 2 ni com Chapter 3 Functions for Multithreaded Applications Threadlbcnt Threadibcnt Purpose Return the value of the thread specific ibcnt Format C int ThreadIbcnt Visual Basic rc ThreadIbcnt Input none No input parameters Output Function Return Value of ibcnt for the calling thread Description ThreadIbcnt returns the current value of ibcnt for a particular thread of execution The global GPIB status variables ibsta iberr ibcnt ibcnt1 are maintained on a per process basis which means that their values are updated whenever any thread in that process makes GPIB calls The thread GPIB status variables are maintained on a per thread basis which means that their values are updated whenever that particular thread makes GPIB
128. sta value passed to the ibnotify callback contains CMPL then the driver and application are resynchronized ibwait If the returned ibsta contains CMPL then the driver and application are resynchronized ibstop The I O is canceled the driver and application are resynchronized ibonl The I O is canceled and the interface is reset the driver and application are resynchronized Possible Errors EARG ud is valid but does not refer to an interface board ECIC The interface board is not Controller In Charge EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured ENOL No Listeners are on the GPIB EOIP Asynchronous I O is in progress National Instruments Corporation 1 17 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBCONFIG IBCONFIG Board Level Device Level Purpose Change the software configuration input Format C ibconfig int ud int option int value Visual Basic CALL ibconfig ud option values or status ilconfig ud option value Input ud Board or device unit descriptor option A parameter that selects the software configuration item value The value to which the selected configuration item is to be changed Output Function Return The value of ibsta Description ibconfig changes a configuration item to the specified value for the selected board or device option may be any of the define
129. ta 3 6 G GPIB error codes table C 1 H help technical support D 1 IbaAUTOPOLL configuration option 1 6 IbaBNA configuration option 1 9 IbaCICPROT configuration option 1 6 IbaDMA configuration option 1 6 IbaEndBitIsNormal configuration option 1 6 IbaEOSchar configuration option boards 1 7 devices 1 9 IbaEOScmp configuration option boards 1 7 devices 1 9 IbaEOSrd configuration option boards 1 7 devices 1 9 IbaEOSwrt configuration option boards 1 7 devices 1 9 IbaEOT configuration option boards 1 7 devices 1 9 IbaHSCableLength configuration option 1 7 Ibalst configuration option 1 7 IbaPAD configuration option boards 1 7 devices 1 9 IbaPP2 configuration option 1 7 IbaPPC configuration option 1 7 National Instruments Corporation IbaPPollTime configuration option 1 8 IbaReadAdjust configuration option boards 1 8 devices 1 9 IbaREADDR configuration option 1 9 IbaRsv configuration option 1 8 IbaSAD configuration option boards 1 8 devices 1 10 IbaSC configuration option 1 8 IbaSendLLO configuration option 1 8 IBASK function 1 5 to 1 10 board configuration parameter options 1 6 to 1 8 description 1 5 device configuration parameter options 1 8 to 1 10 IbaSPollTime configuration option 1 10 IbaSRE configuration option 1 8 IbaTIMING configuration option 1 8 IbaTMO configuration option boards 1 8 devices 1 10 IbaUnAddr configuration option 1 10 IbaWri
130. talled The interface board is not installed or is not properly configured Asynchronous I O is in progress The interface board is not configured as System Controller National Instruments Corporation 2 7 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines EnableRemote EnableRemote Purpose Enable remote GPIB programming for devices Format C void EnableRemote int boardID Addr4882_t addrlist Visual Basic CALL EnableRemote boardID addrlist Input boardID The interface board number addrlist A list of device addresses that is terminated by NOADDR Description EnableRemote asserts the Remote Enable REN GPIB line All devices described by addrlist are put into a listen active state Possible Errors EARG An invalid address appears in addrlist ibcnt1 is the index of the invalid address in the addrlist array EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress ESAC The interface board is not configured as System Controller NI 488 2M Function Reference Manual for Win32 2 8 ni com Chapter 2 NI 488 2 Routines FindLstn FindLstn Purpose Find listening devices on the GPIB Format C void FindLstn int boardID Addr
131. teAdjust configuration option boards 1 8 devices 1 10 IBBNA function 1 11 IBCAC function 1 12 to 1 13 IbcAUTOPOLL configuration option 1 19 IbcCICPROT configuration option 1 19 IbcDMA configuration option 1 19 IbcEndBitIsNormal configuration option 1 19 IbcEOSchar configuration option board level 1 20 device level 1 22 IbcEOScmp configuration option board level 1 20 device level 1 22 National Instruments Corporation 1 3 IbcEOSrd configuration option board level 1 20 device level 1 22 IbcEOSwrt configuration option board level 1 20 device level 1 22 IbcEOT configuration option board level 1 20 device level 1 22 IbcHSCableLength configuration option 1 20 TbcIst configuration option 1 20 IBCLR function 1 14 IBCMD function 1 15 IBCMDA function 1 16 to 1 17 IBCONFIG function 1 18 to 1 23 board level configuration options 1 19 to 1 21 description 1 18 device level configuration options 1 22 to 23 IbcPAD configuration option board level 1 20 device level 1 22 IbcPP2 configuration option 1 20 IbcPPC configuration option 1 20 IbcPPollTime configuration option 1 21 IbcReadAdjust configuration option board level 1 21 device level 1 22 IbcREADDR configuration option 1 22 IbcRsv configuration option 1 21 IbcSAD configuration option board level 1 21 device level 1 23 IbcSC configuration option 1 21 IbcSendLLO configuration option 1 21 IbcSPollTime configuration option
132. ter information Output Function Return The value of ibsta Description ibeos configures the EOS termination mode or EOS character for the board or device The parameter v describes the new end of string EOS configuration to use If v is zero then the EOS configuration is disabled Otherwise the low byte is the EOS character and the upper byte contains flags which define the EOS mode i Note Defining an EOS byte does not cause the driver to automatically send that byte at the end of write I O operations Your application is responsible for placing the EOS byte at the end of the data strings that it defines National Instruments Corporation 1 27 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBEOS Table 1 7 describes the different EOS configurations and the corresponding values of v If no error occurs during the call then the value of the previous EOS setting is returned in iberr Table 1 7 EOS Configurations Value of v Bit Configuration High Byte Low Byte Terminate read when EOS is detected 00000100 EOS character Set EOI with EOS on write function 00001000 EOS character Compare all 8 bits of EOS byte rather than 00010000 EOS character low 7 bits all read and write functions Configuration bits A and C determine how to terminate read I O operations If bit A is set and bit C is clear then a read ends when a byte that matches the low seven bits of the EOS char
133. tes are read until either count data bytes have been read or the termination condition is detected If the termination condition is STOPend the read is stopped when a byte is received with the EOI line asserted Otherwise the read is stopped when the 8 bit EOS character is detected The actual number of bytes transferred is returned in the global variable ibentl RcvRespMsg assumes that the interface board is already in its listen active state and a device is already addressed to be a Talker see ReceiveSetup or Receive Possible Errors EABO The I O timeout period elapsed before all the bytes were received EADR The interface board is not in the listen active state use ReceiveSetup to address the GPIB properly EARG The termination parameter is invalid It must be either STOPend or an 8 bit EOS character National Instruments Corporation 2 15 NI 488 2M Function Reference Manual for Win32 Chapter 2 NI 488 2 Routines RevRespMsg ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 2 16 ni com Chapter 2 NI 488 2 Routines ReadStatusByte ReadStatusByte Purpose Serial poll a single device Format C void ReadStatusByte int boardID Addr4882_t address short result V
134. tion Return The value of ibsta Description ibsic asserts the GPIB interfaces clear IFC line for at least 100 us if the GPIB board is System Controller This initializes the GPIB and makes the interface board CIC and Active Controller with ATN asserted The IFC signal resets only the GPIB interface functions of bus devices and not the internal device functions Consult your device documentation to determine how to reset the internal functions of your device Possible Errors EARG ud is a valid descriptor but does not refer to a board EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress ESAC The board does not have System Controller capability NI 488 2M Function Reference Manual for Win32 1 62 ni com Chapter 1 NI 488 Functions IBSRE IBSRE Board Level Purpose Set or clear the Remote Enable line Format C int ibsre int ud int v Visual Basic CALL ibsre ud v or status ilsre ud v Input ud Board descriptor v Indicates whether to set or clear the REN line Output Function Return The value of ibsta Description If v is non zero the GPIB Remote Enable REN line is asserted If v is zero REN is unasserted The previous value of REN is returned in iberr REN is used by devices to choose between local and remote modes of operation A device should not actually enter remote m
135. to 126 or one of the constants NO_SAD or ALL_SAD The constant NO_SAD designates that no secondary address is to be tested only a primary address is tested The constant ALL_SAD designates that all secondary addresses are to be tested National Instruments Corporation 1 37 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBLN Possible Errors EARG Either the pad or sad argument is invalid ECIC Device level The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 1 38 ni com Chapter 1 NI 488 Functions IBLOC IBLOC Board Level Device Level Purpose Go to Local Format C int ibloc int ud Visual Basic CALL ibloc ud or status illoc ud Input ud Board or device descriptor Output Function Return The value of ibsta Description Board Level ibloc places the board in local mode if it is not in a lockout state The board is in a lockout state if LOK does not appear in the status word ibsta If the board is in a lockout state the call has no effect The ibloc function is used to simulate a front panel RTL Return to Local switch if the compute
136. ttempts to transfer data over the GPIB using DMA Solutions Possible solutions for this error are as follows You can correct the EDMA problem in the hardware by using the GPIB Configuration utility to reconfigure the hardware to not use a DMA resource e You can correct the EDMA problem in the software by using ibdma to disable DMA EOIP 10 EOIP occurs when an asynchronous I O operation has not finished before some other call is made During asynchronous I O you can only use ibstop ibnotify ibwait and ibon1 or perform other non GPIB operations If any other call is attempted EOIP is returned Solutions Resynchronize the driver and the application before making any further GPIB calls Resynchronization is accomplished by using one of the following functions ibnotify If the ibsta value passed to the ibnotify callback contains CMPL the driver and application are resynchronized ibwait If the returned ibsta contains CMPL then the driver and application are resynchronized ibstop The I O is canceled the driver and application are resynchronized ibonl The I O is canceled and the interface is reset the driver and application are resynchronized NI 488 2M Function Reference Manual for Win32 C 6 ni com ECAP 11 Appendix C Error Codes and Solutions Solutions EFSO 12 ECAP results when your GPIB board lacks the ability to carry out an operation or when a particular capability has been disabled i
137. ual Basic CALL ibeot ud v or status ileot ud v Input ud A board or device descriptor v Enables or disables the end of transmission assertion of EOI Output Function Return The value of ibsta Description ibeot enables or disables the assertion of the EOI line at the end of write I O operations for the board or device described by ud If v is non zero then EOI is asserted when the last byte of a GPIB write is sent If v is zero then nothing occurs when the last byte is sent If no error occurs during the call then the previous value of EOT is returned in iberr For more information about the termination of I O operations refer to Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 Possible Errors EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 1 29 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBFIND IBFIND Board Level Device Level Purpose Open and initialize a board or a user configured device descriptor Format C int ibfind char udname Visual Basic CALL ibfind udnames ud or ud ilfind udnames Input udname A user configured device or board name Output Function Return The board or device descriptor or a 1 Description ibfind is used to acquire a descriptor
138. us Possible Errors EARG An invalid address appears in addrlist ibcnt1 is the index of the invalid address in the addrlist array EBUS No devices are connected to the GPIB ECIC The interface board is not the Controller In Charge see SendIFC EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress NI 488 2M Function Reference Manual for Win32 2 6 ni com Chapter 2 NI 488 2 Routines EnableLocal EnableLocal Purpose Enable operations from the front panel of devices leave remote programming mode Format C void EnableLocal int boardID Addr4882_t addrlist Visual Basic CALL EnableLocal boardID addrlist Input boardID The interface board number addrlist A list of device addresses that is terminated by NOADDR Description EnableLocal sends the Go To Local GTL GPIB message to all the devices described by addrlist This places the devices into local mode If addr1ist contains only the constant NOADDR then the Remote Enable REN GPIB line is unasserted Possible Erro EARG EBUS ECIC EDVR ENEB EOIP ESAC rs An invalid address appears in addrlist ibcnt1 is the index of the invalid address in the addrlist array No devices are connected to the GPIB The interface board is not the Controller In Charge see SendIFC Either boardID is invalid or the GPIB driver is not ins
139. us variables ibsta iberr ibcnt ibcnt1 are maintained on a per process basis which means that their values are updated whenever any thread in that process makes GPIB calls The thread GPIB status variables are maintained on a per thread basis which means that their values are updated whenever that particular thread makes GPIB calls If your application performs GPIB operations in multiple threads your application should examine the thread GPIB status variables using ThreadIbsta ThreadIberr ThreadIbcnt and ThreadIbcnt1 instead of the global GPIB status variables NI 488 2M Function Reference Manual for Win32 3 6 ni com Multiline Interface Messages This appendix contains a multiline interface message reference list which describes the mnemonics and messages that correspond to the interface functions These multiline interface messages are sent and received with ATN asserted For more information about these messages refer to the ANSI IEEE Standard 488 1 1987 IEEE Standard Digital Interface for Programmable Instrumentation National Instruments Corporation A 1 NI 488 2M Function Reference Manual for Win32 Appendix A Multiline Interface Messages Table A 1 Multiline Interface Messages Hex Dec ASCII Msg Hex Dec ASCII Msg 00 0 NUL 20 32 SP MLAO 01 1 SOH GTL 21 33 MLA1 02 2 STX 22 34 MLA2 03
140. used as part of GPIB initialization It forces the interface board to be Controller In Charge of the GPIB It also ensures that the connected devices are all unaddressed and that the interface functions of the devices are in their idle states Possible Errors EDVR Either boardID is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress ESAC The interface board is not configured as the System Controller see ibrsc NI 488 2M Function Reference Manual for Win32 2 24 ni com Chapter 2 NI 488 2 Routines SendList SendList Purpose Send data bytes to multiple GPIB devices Format C void SendList int boardID Addr4882_t addrlist void buffer long count int eotmode Visual Basic CALL SendList boardID addrlist buffer eotmode Input boardID The interface board number addrlist A list of device addresses to send data buffer The data bytes to be sent count Number of bytes transmitted eotmode The data termination mode DABend NULLend or NLend Description SendList addresses the devices described by addr1ist to listen and the interface board to talk Then count bytes from buf fer are sent to the devices The last byte is sent with the EOI line asserted if eotmode is DABend The last byte is sent without the EOI line asserted if eotmode is NULLend If eotmode is NLend then a new line character n is sent wit
141. y in progress Most applications do not need to use ibcac Functions that require ATN to be asserted such as ibcma do so automatically NI 488 2M Function Reference Manual for Win32 1 12 ni com Chapter 1 NI 488 Functions IBCAC Possible Errors EARG ud is valid but does not refer to an interface board ECIC The interface board is not Controller In Charge EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchronous I O is in progress National Instruments Corporation 1 13 NI 488 2M Function Reference Manual for Win32 Chapter 1 NI 488 Functions IBCLR IBCLR Device Level Purpose Clear a specific device Format C int ibclr int ud Visual Basic CALL ibclr ud or status ilclr ud Input ud A device unit descriptor Output Function Return The value of ibsta Description ibclr sends the GPIB Selected Device Clear SDC message to the device described by ud Possible Errors EARG ud is a valid descriptor but does not refer to a device EBUS No devices are connected to the GPIB ECIC The access board is not CIC Refer to the Device Level Calls and Bus Management section of Chapter 7 GPIB Programming Techniques in the GPIB User Manual for Win32 EDVR Either ud is invalid or the GPIB driver is not installed ENEB The interface board is not installed or is not properly configured EOIP Asynchro

Download Pdf Manuals

image

Related Search

Related Contents

Wie Sie das Gerät im DAB  GLX-D Wireless System – GLXD6 Guitar Pedal Receiver  1 目次 1. はじめに・・・・・・・・・・・・・・・・・・・・・・1 2. 安全上の    uso e manutenzione "malaguti fifty hf-full-full cx  PLWW - Centrum Druku  SERVICE MANUAL  Le temps des fraises  AMOS ISAM System    

Copyright © All rights reserved.
Failed to retrieve file