首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

SPCOMM接收字符不完全,该如何解决

2012-02-24 
SPCOMM接收字符不完全接收代码为varstr:stringbeginsetlength(str,bufferlength)move(buffer^,pchar(str

SPCOMM接收字符不完全
接收代码为
  var
  str:string;
  begin
  setlength(str,bufferlength);
  move(buffer^,pchar(str)^,bufferlength);
  memo1.Lines.Add(str);
  end;


举例:发送[1111111] 接到[1111漱坭湩潤w]
发送[sdfdsfdsfdsf] 接到[sdfdsfiveDat]
发送[1111] 接到[11ut]

发送代码为comm1.WriteCommData(pchar(memo1.text),length(memo1.text));  
是不是SPCOMM出了BUG?
我用是虚拟串口打开COM3,COM4 一个发,一个接

[解决办法]
我不懂虚拟串口,你把 流控制 xon xoff关了,如果还是这样,可能是你的虚拟串口的驱动有问题
[解决办法]
有时候有乱码?不是每次都有乱码嘛?

spcomm 没遇到这个BUG

看看两个串口的设置的匹配

没怎么用虚拟串口,不太清楚
[解决办法]
move(buffer^,pchar(str)^,bufferlength);

改成

Delphi(Pascal) code
move(buffer^,pchar(@Str[1])^,bufferlength);
[解决办法]
虚拟串口不是串口针短接一下就可以了,需要装虚拟串口软件,spcomm没有这样的bug

热点排行