1340

CMD$ = "VOLT+ STR$( VSTART )

‘ START RAMP AT VSTART. USE NUMBER TO STRING

1350

L = LEN( CMD$ )

‘ CONVERSION TO SEND REAL NUMBERS OVER THE BUS

1360

CALL IOOUTPUTS( SLOTO, CMD$, L )

‘ AS PART OF THE COMMAND STRING.

1370

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1380

 

1390

CMD$ = "CURR .1”

 

1400

L = LEN( CMD$ )

 

1410

CALL IOOUTPUTS( SLOTO, CMD$, L )

 

1420

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1430

 

1440

CMD$ = "OUTPUT ON"

‘ ENABLE OUTPUT

1450

L = LEN( CMD$ )

 

1460

CALL IOOUTPUTS( SLOTO, CMD$, L )

 

1470

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1480

 

1490

CMD$ = "VOLT:MODE LIST"

‘ SET TO GET VOLTAGE FROM LIST

1500

L = LEN( CMD$ )

 

1510

CALL IOOUTPUTS( SLOTO, CMD$, L )

 

1520

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1530

 

1540

‘ SENDING THE VOLTAGE DATA POINTS REQUIRES TWO STEPS USING THE GPIB COMMAND LIBRARY. THE INSTRUCTION CONTAINS BOTH

1550

‘ STRING DATA AND A REAL ARRAY. FIRST, SEND THE STRING DATA COMMAND HEADER "LIST:VOLT" TO THE MODULE USING lOOUTPUTS.

1560

‘ THEN, SEND THE REAL ARRAY USING IOOUTPUTA. HOWEVER, YOU MUST INHIBIT THE EOI AND END-OF-LINE TERMINATOR AFTER THE

1570

‘ IOOUTPUTS COMMAND OR THE MODULE WILL STOP TAKING DATA. THEN RE-ENABLE THEM TO TERMINATE THE IOOUTPUTA.

1580

 

1590

EOI.STATE = 0

‘ TURN OFF EOI

1600

CALL IOEOI( INTERFACE, EOI.STATE )

 

1610

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1620

 

1630

END.OF.LINE = 0

‘ TURN OFF END-OF-LINE TERMINATION

1640

CALL IOEOL( INTERFACE, CR.LF$, END.OF.LINE )

 

1650

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1660

 

1670

CMD$ = "LIST:VOLT

 

1680

L = LEN( CMD$ )

 

1690

CALL IOOUTPUTS( SLOTO, CMD$, L )

‘ SEND THE VOLTAGE HEADER (STRING) ...

1700

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1710

 

1720

EOI.STATE = 1

‘ TURN ON EOI

1730

CALL IOEOI( INTERFACE, EOI.STATE )

 

1740

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1750

 

1760

END.OF.LINE = LEN (CR.LF$ )

‘ TURN ON END-OF-LINE TERMINATION

1770

CALL IOEOL( INTERFACE, CR.LF$ , END.OF.LINE )

 

1780

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1790

 

1800

CALL IOOUTPUTA( SLOTO, VSTEP(1), NUM.POINTS ) ‘ DOWNLOAD THE VOLTAGE POINTS (ARRAY)

1810

IF PCIB.ERR<>0 THEN ERROR PCIS.BASERR

 

1820

 

1830

CMD$ = "LIST:DWELL “ + STR$( DWELL )

‘ DOWNLOAD 1 DWELL TIME. USE NUMBER TO STRING

1840

L = LEN( CMD$ )

‘ CONVERSION TO SEND REAL NUMBERS OVER THE BUS

1850

CALL IOOUTPUTS( SLOTO, CMD$, L )

‘ AS PART OF THE COMMAND STRING.

1860

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1870

 

1880

CMD$ = "LIST:STEP AUTO"

DWELL-PACED LIST

1890

L = LEN( CMD$ )

 

1900

CALL IOOUTPUTS( SLOTO, CMD$, L )

 

1910

IF PCIB.ERR<>0 THEN ERROR PCIB.BASERR

 

1920

 

1930

CMD$ = "INITIATE"

‘ ENABLE TRIGGER TO START LIST

100 Application Programs

Page 99
Image 99
Agilent Technologies 66lxxA manual ‘ Conversion to Send Real Numbers Over the BUS, CMD$ = Output on ‘ Enable Output