HP E1340A User's Manual
Download Operation & user’s manual of HP E1340A Portable Generator for Free or View it Online on All-Guides.com.
1120 Atten=Atten+(Ampl/1.0235)*2047
1130 C$=DVAL$(Atten,16)
1140 Offset=((Offset/.005)*10)+2048
1150 END IF
1160 END SELECT
1170 !
1180 !Load the attenuation value
1190 Write_reg(8,4)
1200 Write_reg(10,IVAL(C$[5;2],16))
1210 Write_reg(10,IVAL(C$[7;2],16))
1220 Check_done
1230 !
1240 !Load the offset value
1250 C$=DVAL$(Offset,16)
1260 Write_reg(8,3)
1270 Write_reg(10,IVAL(C$[5;2],16))
1280 Write_reg(10,IVAL(C$[7;2],16))
1290 Check_done
1300 SUBEND
1310 !
1320 SUB Linsweep(Start_freq,Stop_freq,Rate)
1330 Linsweep: !Subprogram which sets up linear sweeps
1340 COM Base_addr
1350 !Set start and stop frequencies
1360 Frequency1(Start_freq)
1370 Frequency2(Stop_freq)
1380 !Calculate phase (frequency) increment
1390 Tic_cnt=256
1400 REPEAT
1410 Phase_inc=(Stop_freq-Start_freq)*(.00025+.0001*Tic_cnt)/Rate
1420 Tic_cnt=Tic_cnt-1
1430 UNTIL Phase_inc>=.01 AND Phase_inc<42949672.955 OR Tic_cnt=0
1440 C$=DVAL$(INT(100.*Phase_inc+.5),16)
1450 !
1460 !Load the phase increment, tic count, and sweep type value
1470 Write_reg(8,7)
1480 Write_reg(10,IVAL(C$[1;2],16)) !phase increment
1490 Write_reg(10,IVAL(C$[3;2],16)) !phase increment
1500 Write_reg(10,IVAL(C$[5;2],16)) !phase increment
1510 Write_reg(10,IVAL(C$[7;2],16)) !phase increment
1520 Write_reg(10,BINAND(Tic_cnt+1,255)) !tic count
1530 Write_reg(10,0) !linear sweep
1540 Check_done
Appendix C HP E1340A Register-Based Programming 275