AD664
rev. c
–17–
这 下列的 ibm pc 基本 routine 生产 四 输出 volt-
age ramps 从 一个 ad664. 线条 号码 10 通过 70 de-
fine 这 硬件 地址 为 这 第一 和 第二 ranks 的
dac 寄存器 作 好 作 这 第一 和 第二 ranks 的 这 模式
选择 寄存器. 程序 变量 是 initialized 在 线条 号码
110 通过 130. 线条 号码 170 写 “0s” 输出 至 这 第一
分级 和, 然后, 这 第二 分级 的 这 模式 选择 寄存器.
线条 号码 200 通过 320 计算 输出 电压. fi-
nally 线条 号码 410 通过 450 更新 这 第一, 然后 这
第二 ranks 的 这 dac 输入 寄存器. 硬件 寄存器
将 是 读 和 这 “inp” 操作指南. 为 例子, 这 con-
tents 的 这 dac 一个 寄存器 将 是 accessed 和 这 下列的
com mand: Line# 一个 = inp(daca).
5 rem----ad664 lissajous patterns----
10 rem ---assign 硬件 地址---
20 daca = 785
30 dacb = 787
40 dacc = 789
50 dacd = 791
60 dac2nd = 792
70 mode1 = 769: mode2 = 776
80 REM
90 REM
100 rem ---initialize 变量---
110 x = 0: y1 = 128: y2 = 64: y3 = 32
120 cx = 1: cy1 = 1: cy2 = -1: cy3= 1
130 fx = 9: fy1 = 5: fy2 = 13: fy3 = 15
140 REM
150 REM
160 rem ---initialize 模式 和 增益---
170 输出 mode1,0: 输出 mode2,0
180 REM
190 REM
200 rem ---计算 变量---
210 x = x + fx*cx
220 y1 = y1 + fy1*cy1
230 y2 = y2 + fy2*cy2
240 y3 = y3 + fy3*cy3
250 如果 x > 255 然后 x = 255: cx = -1: goto 270
260 如果 x < 0 然后 x = 0: cx = 1
270 如果 y1 > 255 然后 y1 = 255: cy1 = -1: goto 290
280 如果 y1 < 0 然后 y1 = 0: cy1 = 1
290 如果 y2 > 255 然后 y2 = 255: cy2 = -1 goto 310
300 如果 y2 < 0 然后 y2 = 0: cy2 = -1
310 如果 y3 > 255 然后 y3 = 255: cy3 = -1: goto 400
320 如果 y3 < 0 然后 y3 = 0: cy3 = 1
330 REM
340 REM
400 rem ---send dac 数据---
410 输出 daca,x
420 输出 dacb,yl
430 输出 dacc,y2
440 输出 dacd,y3
450 输出 dac2nd,0
500 REM
510 REM
520 rem ---循环 后面的---
530 goto 210