//串口初始化 procedure TForm1.BitBtn3Click(Sender: TObject); begin comm1.startcomm; end; //关闭串口 procedure TForm1.BitBtn4Click(Sender: TObject); begin comm1.StopComm; end; //发送数据 procedure TForm1.BitBtn1Click(Sender: TObject);{var str:string; ch1:char; begin comm1.WriteCommData(ch,1); end. //接收数据 procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer; BufferLength: Word); type ss=array[1..500]of char ; var str1:^ss; i:integer; s:array[0..15] of char ; n:integer; begin str1:=Buffer; //s[]=('0','1','2','3'...'E') for i:=0 to 9 do s[i]:=chr(48+i); for i:=10 to 15 do s[i]:=chr(55+i); for i:=1 to bufferlength do begin n:=ord(str1^[i]); listbox1.Items.add( inttostr(listbox1.Items.Count+1) +' - '+s[n div 16]+s[n mod 16]); end; listbox1.Refresh; if listbox1.Items.count > strtoint(form2.edit1.text) then listbox1.Items.Clear; end; |