用VB 进行串口实时数据采集 VB-界面速成通道 /ChenLL 发表于2007-08-10, 20:28 用VB 进行串口实时数据采集 本文介绍VB6
0 利用MSComm 通信控件,开发微机通过串口对工业仪表进行实时数据采集的编程技术
给出的程序代码具有通用性,并有详细的注释,可以直接或稍加改动后用于其他数据采集或实时控制程序中
----一台工业专用实时检测仪表,接高精度位移传感器,用于测量微小形变或微量位移,仪表测量精度为 0
01 毫米,测量范围最大值为 50 毫米
该仪表带有一个 9 针的RS-232C 串口,能与微机进行串口数据通信,实时传送检测数据,通过微机软件处理可实现工业实时监控
----该仪表的串口数据通信协议是:数据传输速率为 9600bps,1 位开始位,8 位数据位,1 位停止位,无奇偶校验位
仪表每秒发送 50 帧检测数据,每帧数据由 4个字节组成
第一个字节定义为二进制常数0F0H,是每帧数据开始的标志字节;后面连续 2 个字节为数据字节,采用压缩的BCD 码编码方式,高位在前,低位在后,即一个字节表示两位十进制数,则两个字节表示四位十进制数,小数点采用固定形式,定义在两字节中间;第四个字节为符号字节,该字节第八位为 1,即: 1 x x x x x x x 则为负数;第八位为 0,即: 0 x x x x x x x 则为正数
----例如:0F0H 26H 87H 80H 0F0H 34H 62H 00H 表示 -26
----通信传输速率为 9600bps,则最快速度 1
04ms 发送一个字节,仪表每秒发送 50 帧数据,每帧数据有 4 个字节,即每秒发送 200 个字节,平均 5
0ms 发送一个字节,连续读取串口数据时要在程序中添加循环等待程序
----为了实现实时监测功能,接收数据的读取要尽可能的快速,