프루버
20 !hp 3478A DMM !코일 저항만 읽어들이는 프로그램 2020/04/19 김명기
30 !hp 4284A LCR !LCR 미터 추가 2020/04/28 김명기
40 DIM Infilename$[20],Outfilename$[20],Dhms$[8]
50 INTEGER I,J,Diex,Diey
60 DIM Tmp$[1]
70 Time$=TIME$(TIMEDATE)
80 Date$=DATE$(TIMEDATE)
90 Dhms$=Date$[1;2]&Time$[1;2]&Time$[4;2]&Time$[7;2]
100 Infilename$="XY-01.txt"
110 Outfilename$=Dhms$&".txt"
120 CREATE Outfilename$,1
130 ASSIGN @Infile TO Infilename$;FORMAT ON
140 ASSIGN @Outfile TO Outfilename$;FORMAT ON
150 ASSIGN @Probe TO 402
160 Inst=2
170 SELECT Inst
180 CASE 1 !3478A
190 ASSIGN @Dmm TO 427
200 OUTPUT @Outfile;"No.,Time,X,Y,R"
210 CASE 2 !4284A
220 ASSIGN @Lcr TO 417
230 OUTPUT @Lcr;"TRIG:SOUR BUS"
240 OUTPUT @Lcr;"ABORT;:INIT"
250 OUTPUT @Outfile;"No.,Time,X,Y,A-value,B-value"
260 END SELECT
270 GOSUB Infile_retrieve
280 T0=TIMEDATE
290 FOR I=1 TO Total_count
300 Diex=X(I)
310 Diey=-Y(I)
320 OUTPUT @Probe;"MOX"&VAL$(Diex)&"Y"&VAL$(Diey)
330 ENTER @Probe;Tmp$
340 WAIT 1
350 T1=TIMEDATE-T0
360 SELECT Inst
370 CASE 1!3478A
380 ENTER @Dmm;R
390 PRINT I,INT(T1);"sec","X=";X(I),"Y=";Y(I),"R=";R
400 OUTPUT @Outfile;I,T1,X(I),Y(I),R
410 CASE 2!4284A
420 OUTPUT @Lcr;"TRIGGER:IMMEDIATE"
430 OUTPUT @Lcr;"FETCH?"
440 ENTER @Lcr;A,B,C
450 PRINT I,INT(T1);"sec","X=";X(I),"Y=";Y(I),"A=";A,"B=";B
460 OUTPUT @Outfile;I,T1,X(I),Y(I),A,B
470 END SELECT
480 NEXT I
490 STOP
500 Infile_retrieve: !
510 INTEGER Nod,Total_count
520 Nod=3000
530 ALLOCATE INTEGER X(Nod),Y(Nod)
540 ENTER @Infile;Total_count
550 FOR I=1 TO Total_count
560 ENTER @Infile;X(I),Y(I)
570 NEXT I
580 ASSIGN @Infile TO *
590 RETURN
600 END