VB程序实现串口数据收集并存入数据库 (vb 串口收到数据库)

概述

随着物联网技术的广泛应用,串口通信在各行各业中的应用越来越广泛。串口通信可以实现电脑和各种设备的数据传输,如传感器数据、温度数据、湿度数据等。本文将介绍如何使用VB程序实现串口数据的收集并存入数据库中。

实现步骤

1.环境准备

在开始之前,我们需要准备一些环境,如VB开发环境、串口转USB线、串口采集设备等。

2.创建VB项目

打开VB开发环境,创建一个新项目,选择“Windows 窗体应用程序”。在程序中添加一个按钮和一个文本框控件。按钮用于启动和停止串口数据的收集,文本框控件用于显示接收到的数据。

3.编写串口数据采集程序

在VB程序中实现串口数据的读取和显示,具体代码如下:

Private mySerialPort As New System.IO.Ports.SerialPort

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

If Button1.Text = “开始采集” Then

mySerialPort.PortName = “COM1” ‘选择串口

mySerialPort.BaudRate = 9600 ‘设置波特率

mySerialPort.Parity = IO.Ports.Parity.None

mySerialPort.StopBits = IO.Ports.StopBits.One

mySerialPort.DataBits = 8

mySerialPort.Handshake = IO.Ports.Handshake.None

mySerialPort.ReadTimeout = 1000

mySerialPort.Open() ‘打开串口

AddHandler mySerialPort.DataReceived, AddressOf DataRecevied ‘注册事件

Button1.Text = “停止采集”

Else

mySerialPort.Close() ‘关闭串口

RemoveHandler mySerialPort.DataReceived, AddressOf DataRecevied ‘注销事件

Button1.Text = “开始采集”

End If

End Sub

Private Sub DataRecevied(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs)

‘从串口读取数据并显示在文本框中

Dim strData As String = mySerialPort.ReadLine()

Invoke(New MyDelegate(AddressOf DispRecv), String.Format(“{0} {1}”, Now.ToString,

strData))

End Sub

Public Delegate Sub MyDelegate(ByVal str As String)

Private Sub DispRecv(ByVal str As String)

TextBox1.AppendText(str & vbCrLf)

End Sub

以上代码实现启动串口采集后,读取串口数据并将数据实时显示在文本框中。

4.将数据存入数据库

接下来,我们将实现将串口数据存入数据库中。在VB程序中,可使用ADO.NET 实现数据库的访问。以下是实现串口数据存入数据库的代码:

Private Sub SaveData()

Dim myconn As New SqlConnection(“server=(local);database=myDB;uid=myUser;pwd=myPwd;”)

Dim sql As String = “insert into data (time,value) values(‘” & Now.ToString(“yyyy-MM-dd HH:mm:ss”)

& “‘,'” & TextBox1.Text & “‘)”

Dim cmd As New SqlCommand(sql, myconn)

myconn.Open()

cmd.ExecuteNonQuery()

myconn.Close()

End Sub

以上代码中,SqlConnection 类用于建立与数据库的连接,SqlCommand 类用于执行 SQL 命令,insert into 语句用于将数据插入到表中。

5.完善界面及功能

添加“保存数据”按钮,用于手动将当前采集到的数据保存到数据库中。代码如下:

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

SaveData()

End Sub

此外,还可以添加定时保存数据功能,将采集到的数据定时存入数据库中。

本文介绍了如何使用VB程序实现串口数据的收集和存储,通过以上步骤,可以实现对串口数据进行采集、存储、查询等多种操作。串口通信在各行各业中的应用范围非常广泛,如物联网、智能家居、生产控制等领域,本文所介绍的方法可为相关领域的开发提供参考。

相关问题拓展阅读:

vb串口收数据解释

Select Case MSComm1.CommEvent 检查mscomm1的通讯事件的代码,详细的通讯事件代码如下:

通讯事件包括下列设置值:

常数值–描述

comEvSend在传输缓冲区中有比 Sthreshold 数凯消少的字符。

comEvReceive收到 Rthreshold 个字桥厅符。该事件将持续产生直到用 Input 属性从接收缓冲区中删除数据。

comEvCTSClear To Send 线的状态发生盯消知变化。

comEvDSRData Set Ready 线的状态发生变化。该事件只在 DST 从 1 变到 0 时才发生。

comEvCDCarrier Detect 线的状态发生变化。

comEvRing检测到振铃信号。一些 UART(通用异步接收— 传输)可能不支持该事件。

comEvEOF收到文件结束(ASCII 字符为 26)字符。

case 2是处理接收事件的代码。改成1就不是处理接收事件了。

判断 MSComm1.CommEvent的值,如果为2,则执行下面语句。

利用VB实现串口接收单片机数据

InputModeBinary

=

‘通空升过

Input

属性以二进制方式检取回数据

写法有错,正确写法:

MSComm1.InputMode

=

comInputModeBinary

‘以二进制带亏前方式蠢清接收

或:

MSComm1.InputMode

=

‘以二进制方式接收

vb 串口收到数据库的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于vb 串口收到数据库,VB程序实现串口数据收集并存入数据库,vb串口收数据解释,利用VB实现串口接收单片机数据的信息别忘了在本站进行查找喔。


数据运维技术 » VB程序实现串口数据收集并存入数据库 (vb 串口收到数据库)