User`s manual

1390 !
1400 OUTPUT @Afg;"SOUR:LIST1:SSEQ:SEL SEQ1" !sequence name
1410 OUTPUT @Afg;"SOUR:LIST1:SSEQ:DEF 1" !sequence size
1420 OUTPUT @Afg USING "#,K";"SOUR:LIST1:SSEQ:COMB #0" !segm execution order
1430 OUTPUT @Afg1;Sequence(*) !sequence list in indefinite length block
1440 OUTPUT @Afg;CHR$(10);END !terminate with Line Feed (LF) and EOI
1450 !
1460 OUTPUT @Afg;"SOUR:LIST1:SSEQ:ADDR?" !sequence location
1470 ENTER @Afg;Seq1_addr
1480 SUBEND
1490 !
1500 SUB Sind_def
1510 Sind_def: !Compute the damped sine waveform. Download the data
1520 !as a combined list (voltage and marker) of signed numbers
1530 !in an indefinite length block. Download the sequence as a
1540 !combined list (repetition count, marker, and segment address)
1550 !in an indefinite length arbitrary block.
1560 COM @Afg,@Afg1,Base_addr,Seq1_addr,Seq2_addr,Seq3_addr
1570 INTEGER Waveform(1:4096)
1580 INTEGER Sequence(1:2)
1590 REAL Addr_seg2
1600 A=4/4096
1610 W=(2*PI)/50
1620 FOR T=1 TO 4096
1630 Waveform(T)=EXP(-A*T)*SIN(W*T)/.00125
1640 !shift bits to dac code positions
1650 Waveform(T)=SHIFT(Waveform(T),-3)
1660 NEXT T
1670 !
1680 OUTPUT @Afg;"SOUR:LIST1:SEGM:SEL SIN_D" !segment name
1690 OUTPUT @Afg;"SOUR:LIST1:SEGM:DEF 4096" !segment size
1700 OUTPUT @Afg USING "#,K";"SOUR:LIST1:SEGM:COMB #0" !waveform points
1710 OUTPUT @Afg1;Waveform(*) !indefinite length block
1720 OUTPUT @Afg;CHR$(10);END !terminate with line feed (LF) and EOI
1730 !
1740 OUTPUT @Afg;"SOUR:LIST1:SEGM:ADDR?"
1750 ENTER @Afg;Addr_seg2
1760 Addr_seg2=Addr_seg2/8 !/8 to set starting address (boundary) of segment
1770 !
1780 !Sequence (1) is the repetition count and marker enable for
1790 !segment SIN_D. Sequence (2) is the starting address of segment SIN_D.
1800 Sequence(1)=SHIFT(4096-1,-4)+Addr_seg1 DIV 65536.
1810 Sequence(2)=Addr_seg2 MOD 65536.-65536.*(Addr_seg2 MOD 65536.>32767)
1820 !
1830 OUTPUT @Afg;"SOUR:LIST1:SSEQ:SEL SEQ2" !sequence name
1840 OUTPUT @Afg;"SOUR:LIST1:SSEQ:DEF 1" !sequence size
1850 OUTPUT @Afg USING "#,K";"SOUR:LIST1:SSEQ:COMB #0" !segm execution order
1860 OUTPUT @Afg1;Sequence(*) !sequence list in indefinite length block
1870 OUTPUT @Afg;CHR$(10);END !terminate with Line Feed (LF) and EOI
Continued on Next Page
Appendix C Register-Based Programming 503