zoukankan      html  css  js  c++  java
  • VB 串口通信 MSComm控件的使用

      串口通信控件简介

      MSComm 控件通过串行端口传输和接收数据,为应用程序提供串行通讯功能。MSComm控件在串口编程时非常方便,程序员不必去花时间去了解较为复杂的API函数,而且在VC、VB、Delphi等语言中均可使用。 Microsoft Communications Control(以下简称MSComm)是Microsoft公司提供的简化Windows下串行通信编程的ActiveX控件,它为应用程序提供了通过串行接口收发数据的简便方法。

      由于MSComm控件不是标准控件,要使用它就必须将MSComm控件添加到控件工具箱中

      添加控件的方法:选择“工程”|“部件”命令,在出现的“部件”对话框中选择“Microsoft Comm Controls 6.0”

    选择并单击“确定”按钮。这时候MSComm控件就被添加到VB的控件工具箱中了。如右图:(在图中那个电话标识)

      串口的初始化:
     
    View Code
    1 With MSComm1 '初始化串口
    2    .CommPort = 1
    3   .Settings = "19200,N,8,1"
    4   .OutBufferSize = 1024
    5   .InBufferSize = 1024
    6   .PortOpen = True
    7 End With
      在上述初始化中完成了:
        设置通信端口,
        串口通信参数(波特率、奇偶校验、数据位、停止位),
        接收缓冲区的字节数,
        传输缓冲区的字节数,
        设置端口的状态为打开。
      上述初始化放在窗体加载中完成。
     
      数据的传输:
    在这里,我们先添加2个按钮控件,1个文本控件,1个标签控件。
      点击“生成串号”按钮,读取到当前日期,显示在文本控件中。
    View Code
    1 Private Sub Command1_Click()
    2 Dim time_now1 As Date
    3 time_now1 = Now
    4 Text1.Text = Format(time_now1, "yyyymmdd")
    5 used_data = False
    6 End Sub
     
       used_data为一个全局变量,目的是避免一次的数据发送好几次。(这是为了满足我的一个特殊要求,可不重点考虑)。
       
      点击“烧写串号”按钮
     
    View Code
    1 Private Sub Command2_Click()
    2
    3 If used_data = False Then
    4 MSComm1.Output = Text1.Text '发送数据
    5 MsgBox "发送成功", vbInformation, "OK"
    6 used_data = True '表示已发送,数据需要更新才能再发送
    7 End If
    8
    9 End Sub
       将文本控件中的内容赋值给MSComm的发送寄存器中,就能将数据发送出去。
      如果想接收串口发来的数据,可以使用MSComm的接收寄存器Input。使用显示文本中的数据验证接收的数据的正确性。
    View Code
    1 Label2.Caption = MSComm1.Input
       好了,这次就先写到这里啦。
     
     
     
     
  • 相关阅读:
    SCCM2012 R2实战系列之四:初始化配置
    SCCM 2012 R2实战系列之一:SQL安装
    hdu 1242(bfs)
    hdu 1728(bfs)
    hdu 1253(bfs)
    hdu 3661
    hdu 1072(bfs)
    AC模版
    hdu 1010(dfs)
    poj 3628(01_page, dfs)
  • 原文地址:https://www.cnblogs.com/kongtiao/p/2049063.html
Copyright © 2011-2022 走看看