compass 単体制御-6241A{ モード プログラム 表示位置 中央 記録フォーム表示 右下 サイズ設定 700, 300 } 変数 $address = 1 #GPIBアドレス 変数 $cmd = "" #送信文字列 変数 $wait = 100 #送信-受信の待ち時間 変数 $voltage = 0 #電圧設定値 (V) 変数 $voltage1 = -0.3 #電圧スタート値 (V) 変数 $step = 0.01 #電圧の間隔 (V) 変数 $result = "" #受信文字列 exe exe 1回測定{ GPIB.開始 $address GPIB.送信 $address, "*TRG(CRLF)" 待機 $wait GPIB.受信 ($result), $address GPIB.終了 $address 置換 ($result), "(CRLF)", " " 置換 ($result), "DI", " " 記録 $result } exe 繰り返し測定スタート{ GPIB.開始 $address ■繰り返し 測定, 500, 50 GPIB.終了 $address } sub 測定{ GPIB.送信 $address, "*TRG(CRLF)" 待機 100 GPIB.受信 ($result), $address 置換 ($result), "(CR)", " " 置換 ($result), "DI", " " 記録 $result } exe exe 電圧を入力して1回測定{ 入力 ($voltage) 結合 ($cmd) = "SOV" & $voltage GPIB.開始 $address GPIB.送信 $address, $cmd 待機 1000 GPIB.送信 $address, "*TRG(CRLF)" 待機 $wait GPIB.受信 ($result), $address GPIB.終了 $address 置換 ($result), "(CRLF)", " " 置換 ($result), "DI", " " 記録 $result } exe 電圧を変えながら繰り返し測定スタート{ 入力 ($voltage1) 入力 ($step) 計算 $voltage = $voltage1 結合 ($cmd) = "SOV" & $voltage GPIB.開始 $address GPIB.送信 $address, $cmd 待機 1000 ■繰り返し 測定して電圧移動, 2000, 60 GPIB.終了 $address } sub 測定して電圧移動{ GPIB.送信 $address, "*TRG(CRLF)" 待機 100 GPIB.受信 ($result), $address 置換 ($result), "(CRLF)", " " 置換 ($result), "DI", " " 記録 $result 計算 $voltage = $voltage + $step 結合 ($cmd) = "SOV" & $voltage GPIB.送信 $address, $cmd 待機 1000 }