Вниз
Скачать: CL | DM;

Опрос COM-порта под Win9x   Найти похожие ветки 

 
Vince   (2004-02-26 21:30) [0]

Hello многоуважаемы ALL!
Сразу извиняюсь за свою просьбу, знаю, что это не принято, но другого выхода у меня нет...
У меня есть исходник программы на Паскале для опроса COM-порта...я пытался ее переписать на
Delphi, но безуспешно...и фикус в том что мне это даже не нужно...куратор запряг, так и сказал
"Не сделаешь - будут проблемы...". Прошу вашей помощи...может найдется добрый человек и поможет
мне...
Сам исходник:
program dixbits;
uses crt;
var n, f, e : byte;
   b, g : integer;
   d : real;
procedure init;
begin
b:=$3F8; n:=10;
port[b+4]:=1;
delay(100);
port[b+3]:=64;
delay(500);
end;
procedure acquisition;
begin
port[b+4]:=0; d:=0;
for f :=0 to n-1 do
 begin
  port[b+4]:=2;
  e:=port[b+6] and 16;
  port[b+4]:=0;
  if e=16 then d:=d+exp((n-1-f)*ln(2));
 end;
d:=(5*d)/(exp((n)*ln(2))-1);
end;

procedure affiche;
begin
acquisition;
d:=(int(100*d))/100;
writeln(d);
delay(500);
end;

begin
clrscr;
init;
for g:=1 to 20 do
 begin
  affiche;
 end;
end.


 
Talla2k ©   (2004-02-27 01:53) [1]

Во первых в Delphi нет оператора port(вернее есть ,но только в версии 1).Во вторых если тебе в лом все это переделывать на API,то принцип такой
procedure port(addr:word;value:byte);
 begin
      asm
      mov dx,addr
      mov al,value
      out dx,al
      end;
 end;
И соответственно используешь эту процедуру.НО все это будет работать только на Win 9x про 2k and XP забудь.


 
Reindeer Moss Eater ©   (2004-02-27 08:42) [2]

Win9x,Win2k,WinXP:

uses Windows;

CreateFile
SetCommMask
WaitCommEvent
WaitForSingleObject


 
tesseract ©   (2004-02-27 10:04) [3]

Лучший выход - CreateFile. И под 9х и под NT-ми пойдёт. Только с XP траблы - там желательно поставить альтернативный драйвер.

И ещё про CreateFile - она работает с любыми портами - так если поставить PCI- контроллер прямая запись работать не будет. Не говоря уже о гейтах RS232 в Ethernet или USB.


 
Карелин Артем ©   (2004-02-27 10:42) [4]

Есть сайт Torry.net с кучей компонентов под это дело. Есть бесплатные в исходном коде.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
6-1074852745
NetworK
2004-01-23 13:12
2004.04.25
Помогите с сокетами Berkley


3-1080538686
WondeRu
2004-03-29 09:38
2004.04.25
DateTime in Update


1-1081162182
Layner
2004-04-05 14:49
2004.04.25
Мастера! Можно ли стандартные хинты сделать вечными?


3-1080737811
Mazer
2004-03-31 16:56
2004.04.25
Ошибка "Master record missing" при вставке данных в таблицу...


8-1073508949
Балу
2004-01-07 23:55
2004.04.25
Медиаплеер на основе Bass




   Наверх