Win10下VB6.0开发之串口通信基础(二)代码功能篇

MSComm控件串口通信开发

1. MSComm控件的处理流程

  MSComm在适当时候引发控件的处理流程主要分为两步:

1)通过事件驱动处理连接端口通信
  在收发一个字符或者生一个事件时,不管是产生一个事件还是错误(这取决于CommEvent的属性值),都会执行控件的事件程序OnComm()。我们需要预先将处理事件或者错误的逻辑代码输入在控件事件区。

2)检查CommEvent的属性值
  通过检查CommEvent的值来判断是事件还是错误,并根据触发事件时CommEvent不同的值编写不同的分支来处理对应事件。对于处理串口收发数据,最常用的事件属性值有comEvSend(发送数据)comEvReceive(接收数据)

2.上位机和下位机之间连接

  在早期,上位机和下位机之间经常使用的通信方式是RS-232的串行通信控制。直到今天,在USB通信普遍使用的方式下,PC端的应用软件依然是应用RS-232通信,保护了原有的软件开发投入。本次实验用的接口是较为常见USB接口,板子上采用了USB转串口芯片进行信号的转换。


局部功能
1.检查当前可用的串口

  上篇文章中讲到,VB6.0中MSComm控件的端口号仅限于1~16,并且大多数情况下用于插拔的USB都不是一个固定值,因此,我们首先需要获取PC机当前状态下可用于连接的串口端口号。

  代码如下:

On Error Resume Next	'打开端口出错时,程序不会中断
    Dim I As Integer 
    For I = 1 To 16 Step 1 '依次打开1~16的端口
	MSComm1.CommPort = I
       	MSComm1.PortOpen = True
       	If Err.Number <> comPortInvalid Then
            Combo1.AddItem "COM" & I  '获取能够正确打开的端口号
        End If
        MSComm1.PortOpen = False
     Next
   Combo1.Text = Combo1.List(0
  • 9
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值