解决问题:mscomm 控件 ( 积分: 100 )

  • 主题发起人 主题发起人 zhangxuepu107
  • 开始时间 开始时间
Z

zhangxuepu107

Unregistered / Unconfirmed
GUEST, unregistred user!
现用mscomm 控件做了一个通讯程序,与仪器相联,当仪器出现数时,程序就将仪器上的数取出。现在出现问题: 在取数过程中,有时会出现丢失数据现象,正常情况下应该是接收到8个,现在有时接收到7个,和正常数据相比,丢失的数据是 第四个,不知是何原因。
仪器自代的软件在接收数据时不会出现这种情况。而且现在在我的程序在接收到正确的数据时,它的验校码是错误的,当丢失数据时接收到的校验码倒是正确的。
各位高手给看看是什么原因出现这种情况呢
 
校验码你是否理解正确了?然后你怎么知道仪器自带的软件使用时没有出现丢失数据岛现象?程序可以进行差错控制的,丢失了数据在显示中能够看出来么?
 
他的软件每次都接收到8个。取出值和仪器的值相对应。
我的软件取出的值和他的相比较,就是第四位不对,后边三位前推了一位。
 
if msc_100.CommEvent =comevreceive then

begin

str:=msc_100.Input;
if str='' then
bb:=00
else

begin

i:=str[1];
//取出单个字符
bb:=ord(i);
//取出ascii
end;

bbc[num]:=bb;
//将返回的值计入位数组中,数组为全局变量 array of byte
end;

是不是我在换转的过程中丢失的呢??
 
超级终端接收时会不会丢失?
 
仪器不会丢失,lake_cx,可以不把你的qq 留下吗
 
我的qq:85277206
希望指教!
 
后退
顶部