Разработана также версия на языке TurboPASCAL, которая приго­дится, если нужна более высокая частота дискретизации.
Исходный текст ADC10.PAS представляет собой не просто драй­вер. В качестве примера он содержит небольшую прикладную про­грамму вывода на экран результатов двадцати последовательных измерений, проводимых с интервалом в 500 мсек.
program adc10; uses crt; var n,f,e : byte; b,g:: integer; d : real; procedure init; begin
b:=$378; n:=8; port[b]:=2; delay(100); port[b]:=254; delay (500); end;
procedure acquisition; begin
port(b):=252; d:=0; for f :=0 to n-1 do begin
delay(2);port[b]:=253; e:=port [b+1] and 128; port[b]:=252;
if e=0 then d:=d+exp( (n-l-f)*ln(2)); end;
d:=(5*d)/(exp((n)*ln(2))-l); port[b]:=2; end;
procedure affiche; begin
acquisition; d:=(int(100*d))/100; writeln(d); delay(500); end;
begin
clrscr;
init;
for g:=l to 20 do
begin
affiche;
end; end. (* COPYRIGHT 1997 Patrick GUEULLE *)
Страница 71К оглавлениюСтраница 73