vb怎样读取串口数据并进行处理?

2024-11-27 08:44:24
推荐回答(4个)
回答1:

VB6.0可使用MsComm控件实现串口通信。按通信协议和数据帧规约接收和处理数据。

MSComm 控件通过串行端口传输和接收数据,为应用程序提供串行通讯功能。

MSComm 控件提供下列两种处理通讯的方式:

  1. 事件驱动通讯是处理串行端口交互作用的一种非常有效的方法。在许多情况下,在事件发生时需要得到通知,例如,在 Carrier Detect (CD) 或
    Request To Send (RTS) 线上一个字符到达或一个变化发生时。在这些情况下,可以利用 MSComm 控件的 OnComm
    事件捕获并处理这些通讯事件。OnComm 事件还可以检查和处理通讯错误。所有通讯事件和通讯错误的列表,参阅 CommEvent
    属性。

  2. 在程序的每个关键功能之后,可以通过检查 CommEvent 属性的值来查询事件和错误。如果应用程序较小,并且是自保持的,这种方法可能是更可取的。例如,如果写一个简单的电话拨号程序,则没有必要对每接收一个字符都产生事件,因为唯一等待接收的字符是调制解调器的“确定”响应。  

尽管 MSComm 控件有很多重要的属性,但首先必须熟悉几个属性。

回答2:

你这个 不难 吧

2方约定好

发送 4次,前2次是整数部分,后2次是小数部分

那么以后 不管发送什么数据 都 没有问题了,如 3145 个数 就是 31.45

串口通信的 重点 就是 发送方 和 接收方 要 协商好
数据如何发送,如何接收、识别 等等

vb 里字符处理等函数很多
关键是 灵活应用

祝你顺利

回答3:

这个简单啊,关键是用什么方式来传输。如果是文本方式,发送1,5,8,3 Ascii码,那么直接在上位机用字符串方式接受,否则必须改成二进制方式接受,接收的是字节数组。字节数组可以通过连接字符串再做类型变换调用val得到double型的数值。

回答4:

建议发送1583,然后上位机除以100