串口通讯之Cport,简单问题
刚安装cport听说很好用,上手就碰到个小问题。
procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer);
var
Str: String;
begin
ComPort.ReadStr(str, count);
memo.Lines.Add(str);
end;
memo显示的事1个字节一个事件,我总共收上10个字节,显示10列。
我想实现类似Comm控件,上来的数据是整体的。
procedure TPublicForm.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
begin
memo.lines.add(Pchar(buffer));
end;
请问这个组件有没有其他的好方法,另外想找cport的一些帮助(中文的)
[解决办法]
邮件已发送。
43967427
[解决办法]
可以在事件里多检测、读一次
- Delphi(Pascal) code
procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer);var Str: String; newcount:integer;begin str:=''; sleep(100); newcount:=comport.当前字节数; ComPort.ReadStr(str, newcount); comdata:=comdata+str; memo.Lines.Add(Comdata);end;
[解决办法]
下位机可能传输延时
[解决办法]
因为串口比较慢,字节之间有一点点延时