TObject; Buffer: Pointer; BufferLength: Word);此函数,不知为什么?
var
FComm: TFComm;
viewstring:string;
i:integer;
rbuf,sbuf:array[1..16] of byte;
implementation
{$R *.DFM}
procedure TFComm.FormShow(Sender: TObject);
begin
comm1.StartComm;
end;
procedure TFComm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
comm1.StopComm;
end;
//自定义发送数据过程
procedure senddata;
var
i:integer;
commflg:boolean;
begin
viewstring:='' ;
commflg:=true;
for i:=1 to 6 do
begin
if not fcomm.comm1.writecommdata(@sbuf[i],1) then
begin
commflg:=false;
break;
end;
//发送时字节间的延时
sleep(2);
viewstring:=viewstring+inttohex(sbuf[i],2)+'';
end;
viewstring:='发送'+viewstring;
fcomm.memo1.lines.add(viewstring);
fcomm.memo1.lines.add(' ');
if not commflg then
messagedlg('发送失败 !',mterror,[mbyes],0);
end;
procedure TFComm.procedure Comm1ReceiveData(Sender: TObject; Buffer:Pointer;BufferLength: Word);
var
i:integer;
begin
viewstring:='';
// move(buffer^,pchar(@rbuf^),bufferlength);???????
move(buffer^,rbuf,bufferlength);
for i:=1 to bufferlength do
viewstring:=viewstring+inttohex(rbuf[i],2)+'';
viewstring:='接收'+viewstring;
memo1.lines.add(viewstring);
memo1.lines.add('');