
Programming Some Power supply Functions (continued)
| 1220 | CALL IOENTER (PS,OEVENT) | 
 | ’Read back event bit | 
| 1225 | IF PCIB.ERR < > NOERR THEN ERROR PCIB.BASERR | 
 | |
| 1230 | IF (OEVENT AND 1024) = 1024 THEN PRINT "Unit switched to CC mode." | 
 | |
| 1240 | ’Clear the status circuit | 
 | 
 | 
| 1245 | CODES$ = "*CLS" :GOSUB 2000 | 
 | |
| 1260 | FOR I = 1 TO 100 :NEXT I | ’Wait for unit to clear | 
 | 
| 1265 | ‘ | 
 | 
 | 
| 1260 | 'Disable output and save present state in location 2 | 
 | |
| 1265 | CODES$ = "OUTPUT OFF;*SAV 2" | :GOSUB 2000 | |
| 1270 | END | 
 | 
 | 
| 1275 | ‘ | 
 | 
 | 
| 2000 | 'Send command to power supply | 
 | 
 | 
| 2005 | LENGTH = LEN(CODES$) | 
 | 
 | 
| 2010 | CALL IOOUTPUTS (PS,CODES$,LENGTH) | 'Send command to interface | |
| 2015 | IF PCIB.ERR < > NOERR THEN ERROR PCIB.BASERR | ISETUP.BAS error trap | |
| 2020 | RETURN | 
 | 
 | 
| 2025 | ‘ | 
 | 
 | 
| 3000 | 'Get data from power supply | 
 | 
 | 
| 3005 | CALL IOENTERA (PS,OUTPUTS(1),MAX.ELEMENTS,ACTUAL.ELEMENTS) | 
 | |
| 3010 | IF PCIB.ERR < > NOERR THEN ERROR PCIB.BASERR | 
 | |
| 3015 | RETURN | 
 | 
 | 
******************************************************************************************************
IBM Controller Using National Interface
******************************************************************************************************
990‘ 
1000 'Power supply Variable = PS% ; 
1005 CODES$=SPACE$(50):MODE$=SPACE$(5):OEVENT$=SPACE$(20)
1010 D$=SPACE$(60):OUTPUT$=SPACE$(40):BDNAME$=“PS%"
1015 DIM OUTPUT(2)
1020 ‘
1025 'Set up power supply interface for DOS driver
1030 CALL IBFIND(BDNAME$,PS%)
1035 IF PS%<O THEN PRINT "IBFIND Failed."
1040 CALL IBCLR(PS%)
1045 ‘
1050 'Program power supply to CV mode with following voltage and current
| 1055 | CODES$ = "VOLTAGE 78;CURRENT 25” | :GOSUB 2000 | 
| 1060 | ‘ | 
 | 
| 1065 | 'Query power supply outputs and print to screen | 
 | 
| 1070 | CODES$ = "MEASURE:VOLTAGE?;CURRENT?" | :GOSUB 2000 :GOSUB 3000 | 
| 1075 | VOUT = OUTPUT(1) | 
 | 
| 1080 | IOUT = OUTPUT(2) | 
 | 
| 1085 | PRINT "The programmed levels are "VOUT" Volts and "IOUT" Amps" | 
 | 
| 1090 | ‘ | 
 | 
| 1095 | 'Program triggered current level to value insufficient to maintain | 
 | 
| 1100 | 'unit within its CV operating characteristic | 
 | 
| 1105 | CODES$ = "CURR:TRIG 1" | :GOSUB 200 | 
| 1110 | ‘ | 
 | 
| 1115 | 'Set operation status mask to detect mode change from CV to CC | 
 | 
| 1120 | CODES$ = "STAT:OPER:ENAB 1024;PTR 1024" | :GOSUB 2000 | 
| 1125 | ‘ | 
 | 
Remote Programming 59
