(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
프루버
10 !파일로 존재하는 XY 좌표대로, 특성값을 읽어들이는 프로그램 2020/04/19 김명기,
20 !hp 3478A DMM
30 !hp 4284A LCR
40 !Keithley 2420 SourceMeter
50 DIM Infilename$[20],Outfilename$[20],Dhms$[8]
60 INTEGER I,J,Diex,Diey
70 DIM Tmp$[1]
80 Time$=TIME$(TIMEDATE)
90 Date$=DATE$(TIMEDATE)
100 Dhms$=Date$[1;2]&Time$[1;2]&Time$[4;2]&Time$[7;2]
110 Infilename$="XY-01.txt"
120 Outfilename$=Dhms$&".txt"
130 CREATE Outfilename$,1
140 ASSIGN @Infile TO Infilename$;FORMAT ON
150 ASSIGN @Outfile TO Outfilename$;FORMAT ON
160 ASSIGN @Probe TO 402
170 Inst=3
180 SELECT Inst
190 CASE 1 !3478A
200 ASSIGN @Dmm TO 427
210 OUTPUT @Outfile;"No.,Time,X,Y,R"
220 CASE 2 !4284A
230 ASSIGN @Lcr TO 417
240 OUTPUT @Lcr;"TRIG:SOUR BUS"
250 OUTPUT @Lcr;"ABORT;:INIT"
260 OUTPUT @Outfile;"No.,Time,X,Y,A-value,B-value"
270 CASE 3 !2420
280 ASSIGN @Sm TO 424
290 OUTPUT @Sm;"FORM:ELEM VOLT, CURR"
300 OUTPUT @Sm;"SOURCE:CLEAR:AUTO ON"
310 OUTPUT @Outfile;"No.,Time,X,Y,Volt,Curr"
320 END SELECT
330 GOSUB Infile_retrieve
340 T0=TIMEDATE
350 FOR I=1 TO Total_count
360 Diex=X(I)
370 Diey=-Y(I)
380 OUTPUT @Probe;"MOX"&VAL$(Diex)&"Y"&VAL$(Diey)
390 ENTER @Probe;Tmp$
400 WAIT 1
410 T1=TIMEDATE-T0
420 SELECT Inst
430 CASE 1 !3478A
440 ENTER @Dmm;R
450 PRINT I,INT(T1);"sec","X=";X(I),"Y=";Y(I),"R=";R
460 OUTPUT @Outfile;I,T1,X(I),Y(I),R
470 CASE 2 !4284A
480 OUTPUT @Lcr;"TRIGGER:IMMEDIATE"
490 OUTPUT @Lcr;"FETCH?"
500 ENTER @Lcr;A,B,C
510 PRINT I,INT(T1);"sec","X=";X(I),"Y=";Y(I),"A=";A,"B=";B
520 OUTPUT @Outfile;I,T1,X(I),Y(I),A,B
530 CASE 3 !2420
540 OUTPUT @Sm;"READ?"
550 ENTER @Sm;Volt,Curr
560 PRINT I,INT(T1);"sec","X=";X(I),"Y=";Y(I),"V=";Volt,"i=";Curr
570 OUTPUT @Outfile;I,T1,X(I),Y(I),Volt,Curr
580 END SELECT
590 NEXT I
600 STOP
610 Infile_retrieve: !
620 INTEGER Nod,Total_count
630 Nod=3000
640 ALLOCATE INTEGER X(Nod),Y(Nod)
650 ENTER @Infile;Total_count
660 FOR I=1 TO Total_count
670 ENTER @Infile;X(I),Y(I)
680 NEXT I
690 ASSIGN @Infile TO *
700 RETURN
710 END