| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1368 人关注过本帖
标题:spcomm串口通信为什么会丢数据?
只看楼主 加入收藏
kxcathy
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-10-24
收藏
 问题点数:0 回复次数:1 
spcomm串口通信为什么会丢数据?
procedure TForm1.SendHex(S: String);
var
  s2:string;
  buf1:array[0..50000] of char;
  i:integer;
begin
  s2:='';
  for i:=1 to  length(s) do
  begin
    if ((copy(s,i,1)>='0') and (copy(s,i,1)<='9'))or((copy(s,i,1)>='a') and (copy(s,i,1)<='f'))
        or((copy(s,i,1)>='A') and (copy(s,i,1)<='F')) then
    begin
        s2:=s2+copy(s,i,1);
    end;
 //   edit2.Text:=s2;
  end;
  for i:=0 to (length(s2) div 2-1) do
    buf1[i]:=char(strtoint('$'+copy(s2,i*2+1,2)));
  Comm1.WriteCommData(buf1,(length(s2) div 2));
end;

procedure TForm1.Timer1Timer(Sender: TObject);
 var
  year,month,day,hour,minute,second,millisecond:word;
  str1:string;

begin

   timer1.Interval:=Trunc(StrToFloat(edit1.Text)*60*1000);
   label1.Caption:=datetimetostr(now());
   decodedatetime(now(),year,month,day,hour,minute,second,millisecond);
   str1:=inttohex((second*1000+millisecond),4)+inttohex(minute,2)+inttohex
   (hour,2);
    T:=('6853ff670101ff0000'+str1+'8116');
  // T:=('6853ff670101ff'+str1+'8116');
    SendHex(T);
    edit3.text:=T;
end;


procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  Comm1.StopComm;
end;
//测试接收程序


procedure (Sender: TObject; Buffer: Pointer;
  BufferLength: Word);
  var
    tmpArray:array[0..4096] of Byte;
    ArraySize,i: DWORD;
    Count:DWORD;
    tmpStr,s:string;
    pStr:PChar;
  begin
   pStr:=Buffer;
   tmpStr:=string(pStr);
   Dec(PStr);
   s:='';
   for i:=0 to Length(tmpStr)-1 do
    begin
     inc(PStr);
     tmpArray[i]:=Byte(PSTR^);
     s:=s+IntToHEX(Ord(tmpArray[i]),2);
    end;
      Memo1.Lines.Add(s);
      exit;
  end;



procedure TForm1.FormShow(Sender: TObject);
begin
Comm1.StartComm;
end;



end.
这个是串口通信的主要代码,现在的问题在于接收到的只有6853ff670101ff这么多,后面的都收不到。请高手指教一下,到底是哪里的问题?是接收程序还是发送程序呢?谢谢啦……
搜索更多相关主题的帖子: spcomm串口通信 
2008-10-24 21:15
快速回复:spcomm串口通信为什么会丢数据?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.040246 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved