procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
  BufferLength: Word);
var
  i:integer;
  Hex:integer;
  viewstring:string;      //串口接受字符串
  rbuf,sbuf:array[1..255] of byte;  //信息所占缓存
begin
  button2.Visible:=false;
  viewstring:='';
  move(buffer^,pchar(@rbuf)^,bufferlength); //Copies bytes from a source to a destination.
  for i:=1 to bufferlength do
  viewstring:=viewstring+inttohex(rbuf[i],2)+'  ';
  viewstring:='接受'+viewstring;
  memo1.lines.add(viewstring);   //十六进制信号读取成功
  Hex:=Hextoint(viewstring);
  memo2.Lines.add(inttostr(Hex));
  这个程序正确就是不停的读一个信号,如何清空信息所占缓存让它读其他信号???