在delphi7中利用mscomm控件编程

伟哥是很凶残的

伟哥是很凶残的

2016-02-19 18:51

下面图老师小编跟大家分享在delphi7中利用mscomm控件编程,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~
Mscomm是微软一个强大的串口通讯的控件,其强大,简单的特点今我们不舍,在delphi中我们也可以使用它。下面这些代码是针对发送和接收为16进制处理的。
  var
    senddata:array[1..10] of char;
    reData:array of Variant;
    sendstr:string;
    restr:string;
    i:longint;
  begin
    mscomm1.CommPort := 1;                    //指定端口
    mscomm1.Settings := '9600,N,8,1';        //其它参数
    mscomm1.InBufferSize := 1024;             //接收缓冲区
    mscomm1.OutBufferSize := 1024;            //发送缓冲区
    mscomm1.InputMode := comInputModeBinary;  //接收模式
    mscomm1.InputLen := 0;                    //一次读取所有数据
    mscomm1.SThreshold := 0;                  //一次发送所有数据
    mscomm1.InBufferCount := 0;               //清空读取缓冲区
    mscomm1.OutBufferCount := 0;              //清空发送缓冲区
    mscomm1.PortOpen:=true;                     //打开端口
    MSComm1.RThreshold := 16;               //设置接收多少字节开产生oncomm事件
    senddata[1]:=chr($06);                          //要发送的数据
    senddata[2]:=chr($03);
    senddata[3]:=chr($00);
    senddata[4]:=chr($03);
    senddata[5]:=chr($10);
    sendstr:='';
    for i:=1 to 5 do
    sendstr:=sendstr + senddata[i];
    mscomm1.output:=sendstr;                       //发送数据
    i:=0;
    bzw:=false;
  
    repeat
       sleep(10);
      Application.ProcessMessages;
      i := i + 1;
      If i 30000 Then
        begin
          showmessage('发送超时!');
          break;
        end;
    Until bzw = true;
    redata:=mscomm1.Input;       接收数据
    restr:='';
    for i:=0 to vararrayhighbound(redata,1) do
        restr:=restr + inttohex(redata[i],2)+' ';
    mscomm1.PortOpen:=false;
    flatmemo1.Text:=restr;
  end;
  //oncomm事件
  procedure TForm1.MSComm1Comm(Sender: TObject);
  begin
    case mscomm1.CommEvent of
      comEvReceive: bzw := true;
    end;
  end;

  最后,记事发布软件时要带上Mscomm32.ocx文件。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)
展开更多 50%)
分享

猜你喜欢

在delphi7中利用mscomm控件编程

编程语言 网络编程
在delphi7中利用mscomm控件编程

Delphi中利用MSCOMM控件进行GPS数据采集

编程语言 网络编程
Delphi中利用MSCOMM控件进行GPS数据采集

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

在Delphi7中调试COM+

编程语言 网络编程
在Delphi7中调试COM+

Delphi7中存储unicode的BUG

编程语言 网络编程
Delphi7中存储unicode的BUG

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

delphi7找不到TBDEClientDataSet控件的解决方案

编程语言 网络编程
delphi7找不到TBDEClientDataSet控件的解决方案

Delphi中API编程--在Delphi中调用API函数

Delphi
Delphi中API编程--在Delphi中调用API函数

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

在Dreamweaver CS3中用Spry将XML数据显示到HTML页

在Dreamweaver CS3中用Spry将XML数据显示到HTML页

失恋后伤感qq分组设计_输了就罚你爱我一辈子

失恋后伤感qq分组设计_输了就罚你爱我一辈子
下拉加载更多内容 ↓