$FF0000.
10 В - это (в высоту) будет 300 пикселей, а U В -- 300*U/10=30*U пикселей.
Chislo_voltov_2:=round(30*chislo_voltov_1/100).
procedure Alg1;
Spoiler:
Code: Select all
procedure Alg1;
var s1,s2,s:string; x,y:dword;
begin
x:=x+10;
s1:='#020';
sc(s1);
rc(s2);
s[0]:=chr(5);
s:=s2[3]+s2[4]+s2[5]+s2[7]+s2[8];
y:=325-round((3*str5_to_num(s))/10);
k.writeText(x,y,$FF0000,0,chr(252));
end;
Spoiler:
Code: Select all
function str5_to_num(s:string):dword;
var c:char; i,cif1,cif2,cif3,cif4,cif5,cif:dword;
begin
for i:=1 to 5 do begin
c:=s[i];
case c of
'0': cif:=0;
'1': cif:=1;
'2': cif:=2;
'3': cif:=3;
'4': cif:=4;
'5': cif:=5;
'6': cif:=6;
'7': cif:=7;
'8': cif:=8;
'9': cif:=9;
end;
case i of
1: cif1:=cif;
2: cif2:=cif;
3: cif3:=cif;
4: cif4:=cif;
5: cif5:=cif;
end;
end;
str5_to_num:=10000*cif1+1000*cif2+100*cif3+10*cif4+cif5;
end;
http://vrtp.ru/index.php?showtopic=2211&st=3960
Итого: скада (на нехитром MODBUS'овом замесе) может строиться
с помощью 5ти процедур - на ассемблере, а остальное - на паскале.
SCADA (аббр. от англ. supervisory control and data acquisition, диспетчерское управление и сбор данных) — программный пакет, предназначенный для разработки или обеспечения работы в реальном масштабе времени систем сбора, обработки, отображения и архивирования информации об объекте мониторинга или управления.
Вот тут паскаль про:
http://diamond.kolibrios.org/hll/hll_eng.htm ,
но может быть и где-то здесь:
viewtopic.php?f=9&t=2353 .
Для подстыковки нового i7-модуля (кроме переходника) - в него втыкается перемычка (INIT* на землю), вследствие чего он становится на адрес 01 и скорость 9600, после чего в него можно залить новые настройки (адрес, скорость и др.) (соответствующей отсылаемой строкой), на которые он встанет после вынимания перемычки (при включённом питании перемычку вынимать пока не пробовал).
i7017