Возможности многоканальных измерений.
Схемы | Программы | Библиотека | Все для сотового | Компьютеры | Поиск |
Чат | Форум | Ссылки | Рефераты | Гостевая |
Подключение нескольких АЦП к параллельным и последовательным портам позволяет оснастить ПК несколькими аналоговыми входами, не прибегая к помощи дорогих АЦП с мультиплексными входами. Возможны любые сочетания как аппаратных, так и программных средств. Самый распространенный случай - это создание двухлучевого виртуального осциллографа, но можно принять в расчет и задачи, требующие режима работы «X-Y», а также просто запись в файл более или менее взаимосвязанных последовательностей данных. Допускается огромное множество различных комбинаций - все их даже не перечислить. Скажем, приобретя один готовый АЦП, второй можно собрать самостоятельно, чтобы не платить дважды за одно и то же программное обеспечение. В некоторых случаях может понадобиться использование двух абсолютно идентичных АЦП. 5 REM----BICOURBE---- 10 REM----MAXIM12 ---- 20 KEY'OFF:CLS 30 B=&H3F8:REM COM1: 40 N=12:REM число разрядов 50 OUT B+4,1 60 FOR T=0 TO 100:NEXT T 70 OUT B+3,64 80 FOR T=0 TO 500:NEXT T 84 GOSUB 1000 85 GOSUB 300 90 GOTO 200 100 OUT B+4, 0 :D=0:REM ACQUISITION 105 OUT B+4,2:OUT B+4,0 110 FOR F=0 TO N-l 120OUTB+4,2 130 E=INP(B+6) AND 16 140 OUT B+4,0 150 IF E=16 THEN D=D+2^(N-1-F) 160 NEXT F 170 D=5*D/(2^N-l) V 180 OUT B+4,1:RETURN 200 REM----VDIRECT---- 210 GOSUB 100:GOSUB 1090 220 FOR G=l TO 639 230 GOSUB 100 240 Y=D:GOSUB 500 241 GOSUB 1090 242 Y=Q:GOSUB 600 250 FOR T=0 TO 2000 :NEXT T:REM развертка 260 NEXT G 270 END 300 REM----VGA ---- 310 SCREEN 9 320 KEY OFF:CLS 330 LINE(0,0)-(0,349) 340 FOR Y=0 TO 349 STEP 35 350 LINE(0,Y)-(639,Y),2,,&HCCCC 360 NEXT Y 370 FOR X=0 TO 639 STEP 32 380 LINE(X,0)-(X,349),2,,&HCCCC 390 NEXT X 400 LINE(639,0)-(639,349) ,2 410 LINE(0,349)-(639,349),2,,&HCCCC 415 X=0:RETURN 500 Y=349-INT(Y*349/5) 502 PSET(X,V) 505 V=Y 510 LINE -(X,V),12 520 X=X+1 530 RETURN 600 Y=349-INT(Y*349/5) 602 PSET(X,W) 605 W=Y 610 LINE -(X,W),14 630 RETURN ....... 1000 REM ---- 12BITS ---- 1010 KEY OFF:CLS 1020 C=&H2F8:REM COM2: 1030 M=12:REM число разрядов 1040 OUT C+4,1 1050 FOR T=0 TO 100:NEXT T 1060 OUT C+3,64 1070 FOR T=0 TO 500:NEXT T 1080 RETURN 1090 OUT C+4,0:Q=0:REM ACQUISITION 1100 OUT C+4,2:OUTC+4,0 1110 OUT C+4, 2: OUT C+4,0 1120 OUT C+4,2:OUT C+4,0 1130 FOR F=0 TO M-l 1140 OUT C+4,2 1150 E=INP(C+6) AND 16 1160 OUT C+4,0 1170 IF E=16 THEN Q=Q+2^(M-1-F) 1180 NEXT F 1190 0=5*0/(2^М-1) 1200 OUT C+4,1:RETURN ' 1210 REM (c)1997 Patrick GUEULLE Программа BICOURBE.BAS не должна рассматриваться только как иллюстрация того, что можно получить при комбинировании программных модулей, приведенных в данной книге. Это образец подхода, называемого англоговорящими программистами quick and dirty («быстро и грязно»): здесь отсутствует всякое стремление к структурированию и четкости. Программа работает, и это главное! В частности, неоднократно применялась функция RENUM языка BASIC для переопределения в разных местах той или другой подпрограммы. В том виде, в каком она приведена, программа управляет сразу двумя 12-разрядными АЦП - одним на базе МАХ 1241 и другим на базе LTC 1286. Для каждого из них определен один из каналов двухлучевого осциллографа (рис. 5.14), в котором разные цвета лучей позволяют без труда отличать один АЦП от другого.
Действительно, язык BASIC легко позволяет задавать атрибуты, определяющие цвет того или иного графического элемента, лишь бы его поддерживал графический экран. Ниже приведены коды цветов: 0 черный1 синий 2 зеленый 3 голубой 4 красный 5 пурпурный 6 коричневый 7 белый (цвет по умолчанию) 8 серый 9 светло-синий 10 светло-зеленый 11 светло-голубой 12 светло-красный 13 светло-пурпурный 14 желтый 15 ярко-белый
|
--------------------------------------------------------------------------------------------------------------------------------------------