![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#7
|
|||
|
|||
![]() попробовал, все равно зависает
function ft4222_SPI_send_read(ftHandle: Dword; readBuffer,writeBuffer :PAnsiChar; sizeToTransfer : word; sizeTransferred : PWORD; isEndTransaction : boolean) : FT_Result ; stdcall ; External FT_DLL_Name4222 name 'FT4222_SPIMaster_SingleReadWrite'; Код:
procedure TForm1.Button3Click(Sender: TObject); var i,k,l:integer; rx,tx:PAnsiChar;//PSPI_BUFF; rxs,txs:ansistring; sizeTransferred:PWORD;//psizeTransferred; sizetotransfer:word; begin FT_HANDLE:=get_handl; txs:='1'; k:=length(txs);//*SizeOf(Char); sizetotransfer:=K; rx:=@rxs; tx:=@txs; sizeTransferred:=@l; //i:=SPI_send_read(serial,rx,tx,k,sizeTransferred);//,sizeTransferred); i:=ft4222_SPI_send_read(FT_HANDLE,rx,tx,sizetotransfer,sizeTransferred,true); form1.Memo1.Lines.Add(rxs); I:=sizeTransferred^; form1.Memo1.Lines.Add(inttostr(i)); end; вот в таком виде не зависает: function ft4222_SPI_send_read(ftHandle: Dword; readBuffer,writeBuffer :PSPI_BUFF; sizeToTransfer : int64; sizeTransferred : psizeTransferred; isEndTransaction : boolean) : FT_Result ; stdcall ; External FT_DLL_Name4222 name 'FT4222_SPIMaster_SingleReadWrite'; Код:
procedure TForm1.Button3Click(Sender: TObject); var i,k,l:integer; rx,tx:PSPI_BUFF; rxs,txs:array [0..255] of byte;//ansistring; sizeTransferred:psizeTransferred; sizetotransfer:int64; b:string; begin FT_HANDLE:=get_handl; txs[0]:=1; txs[1]:=1; txs[2]:=1; txs[3]:=1; txs[4]:=1; txs[5]:=1; k:=length(txs);//*SizeOf(Char); sizetotransfer:=6; rx:=@rxs; tx:=@txs; sizeTransferred:=@l; //i:=SPI_send_read(serial,rx,tx,k,sizeTransferred);//,sizeTransferred); i:=ft4222_SPI_send_read(FT_HANDLE,rx,tx,sizetotransfer,sizeTransferred,true); setlength(b,2); //b[1]:=int(rxs[0]); //b[2]:=int(rxs[1]); //form1.Memo1.Lines.Add(b); I:=sizeTransferred^; end; но функция возвращает ошибку 1009, что это пока не нашел ( отправка так же не происходит Последний раз редактировалось OSIRIS, 08.10.2015 в 18:59. |