资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

vb点虐 串口代码 vb串口程序

用VB使串口返回信息,代码怎么写

你的意思是用VB编程通过串口发送指令给其他设备,然后得到设备的返回信息?

创新互联专注于企业营销型网站建设、网站重做改版、西乡塘网站定制设计、自适应品牌网站建设、H5场景定制成都做商城网站、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为西乡塘等各大城市提供网站开发制作服务。

如果是的话,可以用VB6.0里的串口控件MScomm实现,具体的控件操作,网上搜下太多了。另外可以用vb点虐 (2005以上)里面的串口类SerialPort实现,这个类网上也有很多的。

代码的话,你要提供电脑端串口发送的指令表,及设备的返回信息表。这样便于判断指令的执行是否正确。还有根据你提供的图片分析,请求指令应该是宏定义

IRP_MJ_CREATE 我理解应该对应一个数字 如0x21(十六进制)

IOCTL_SERIAL_SET_BAUD_RATE= 0x22

……

就是说从电脑串口发送0x21,即打开串口; 发送0x22,设置波特率为38400,等等。

然后设备返回信息,如0x100表示串口打开成功,等等。

请把问题再描述清楚些。

怎样在vb中自动检测到可用串口号的具体程序代码

j = 0

For i = 1 To 16 Step 1

If comISP.PortOpen = True Then '先关闭串口

comISP.PortOpen = False

End If

comISP.CommPort = i

On Error Resume Next '说明当一个运行时错误发生时,控件转到紧接着发生错误的语句之后的语句,并在此继续运行。访问对象时要使用这种形式而不使用 On Error GoTo。

comISP.PortOpen = True

If Err.Number 8002 Then '无效的串口号。这样可以检测到虚拟串口,如果用Err.Number = 0的话检测不到虚拟串口

If j = 0 Then

j = i

End If

cboPort.AddItem "COM" i '生成串口选择列表

End If

comISP.PortOpen = False

Next i

If j = 1 Then

cboPort.Text = "COM" j '自动打开可用的最小串口号

comISP.CommPort = j

comISP.PortOpen = True

cmdOpenCom.Caption = "关闭串口"

shpCOM.FillColor = vbGreen

If Err.Number = 8005 Then '串口已打开,vbExclamation '

comISP.PortOpen = False

cboPort.Text = ""

cmdOpenCom.Caption = "打开串口"

shpCOM.FillColor = vbRed

End If

End If

vb点虐 +判断串口发送是否空?

在 VB.NET 中,判断串口发送是否为空可以通过判断 SerialPort 类的 IsOpen 和 BytesToWrite 属性来实现。

IsOpen 属性可以判断串口是否已经打开,如果串口没有打开,则无法发送数据,因此 IsOpen 属性可以用来判断串口发送是否可行。

BytesToWrite 属性可以获取当前串口发送缓冲区中待发送的字节数,如果 BytesToWrite 属性的值为 0,则说明当前串口发送缓冲区为空,可以进行下一次发送操作。

下面是一个简单的示例代码:

```

Dim serialPort As New SerialPort()

' 设置串口参数...

If serialPort.IsOpen AndAlso serialPort.BytesToWrite = 0 Then

' 发送数据...

End If

```

在使用串口发送数据时,需要始终注意串口是否已经打开,以及当前发送缓冲区中是否有待发送的数据,否则可能会出现发送失败的情况。


名称栏目:vb点虐 串口代码 vb串口程序
标题链接:http://cdkjz.cn/article/ddjecse.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220