Модуль "P2KApi" (часть 57) - TP2KAPI.SendBIN

Рубрика: Исходники
Среда, 21 апреля 2010 г.
Просмотров: 183
последняя версия: 3.0.9 build 961 beta
от 07 декабря 2007 г.
function TP2KAPI.SendBIN(Data:Pointer; Size:word):boolean;
var Cmd_temp:array[0..2055] of byte;
    i:byte;
    chk:byte;
    Cmd_Ans:array[0..1023] of char;
    tmpstr:shortstring;
    xx: dword;

begin
  result:= false;
  if not TelStatus then exit;
  chk:=0;
  cmd_temp[0]:=02;
  cmd_temp[1]:=ord('B');
  cmd_temp[2]:=ord('I');
  cmd_temp[3]:=ord('N');
  cmd_temp[4]:=$1E;
  result:=true;
  if Size > $800 then Size:=$800;
  cmd_temp[5]:=hibyte(Size);
  cmd_temp[6]:=lobyte(Size);
  move(Data^,cmd_temp[7],Size);
  chk:=0;
  for i:=1 to Size+2 do chk:=chk+cmd_temp[i+4];
  cmd_temp[Size+7]:=chk;
  cmd_temp[Size+8]:=03;
  USB_WriteDataEx(@Cmd_temp, Size+9,2,xFlashTimeOut);
  xx:= 1024;
  USB_ReadDataEx(@Cmd_ans, xx,2,xFlashTimeOut);
  tmpstr:=trim(cmd_ans);tmpstr:=copy(tmpstr,1,3);
  if tmpstr = 'ERR' then result:=false;
end;
Rambler's Top100