Skew DAC Adjustment Procedure (cont’d)
Example Program (cont’d)
440 !---------- Perfo rm cal ----------
450 OUTPUT @Afg;"*RST;*CLS;*OPC?" !Reset AFG
460 ENTER @Afg;Result
470 !
480 !Set up Spec Analyzer
490 Setup_spec(VAL$(Amp_in_dbm-2)&"DM",VAL$ (Freq* H ar mo nic),S ea rch _span$)
500 !
510 !Set up AFG
520 OUTPUT @Afg;"FUNC SIN;";
530 OUTPUT @Afg;":VOLT "&VAL$(Amp_in_dbm)&"DBM;";
540 OUTPUT @Afg;":FREQ "&VAL$(Freq)
550 OUTPUT @Afg;"INIT:IMM"
560 Load_delay_dac(Dac_word) !Load constant into register
570 !
580 !Capture and center 2nd harmonic
590 Get_2nd_harm(Test_span$)
600 !
610 !Begin cal search loop
620 Search_loop=1
630 REPEAT
640 ALLOCATE INTEGER Word_array(0:((Max_word-Min_word)/Step_size))
650 ALLOCATE REAL Meas_array(0:((Max_word-Min_word) /S te p_size))
660 Array_counter=0
670 !
680 PRINT "LOOP =";Search_loop
690 PRINT
700 PRINT "CONSTANT"," READING"
710 PRINT "--------"," -------"
720 !
730 !Find constant that produces minimum 2nd harmonic
740 FOR I=Min_word TO Max_word STEP Step_size
750 IF I=256 THEN
760 Dac_word=255
770 ELSE
780 Dac_word=I
790 END IF
800 Load_delay_dac(Dac_word) !Load constant into register
810 Word_array(Array_counter)=Dac_word
820 !
830 !Measure 2nd_harmonic, store in array
840 Meas_2nd_harm(Meas_array(Array_counter))
850 PRINT Word_array(Array_counter),DROUND(Meas_array( Arr ay_ counter),8)
860 Array_counter=Array_counter+1
870 NEXT I
880 !
(Continued on next page)
112 Adjustments Agilent E1445A Ser vice Manual