vbでシリアルポートデータをリアルタイムに取得する方法は何ですか?

VBでリアルタイムにシリアルポートデータを読み取る方法にはいくつかありますが、以下は一般的に使用されている方法の 1 つです。

最初に、VBではSystem.IO.Portsの名前空間を参照して、関連シリアルポートのクラスを使用できるようにしてください。

次に VB のコードで SerialPort オブジェクトを作成し、ポート番号、ボーレート、データビットなどのシリアルポートの関連プロパティを設定します。

続いて、SerialPortオブジェクトのOpenメソッドでシリアルポートを開き、受信したデータの処理を行うイベントハンドラを登録します。

最後に、イベントハンドラで、 シリアルポートオブジェクトのReadLineまたはReadExistingメソッドを使って、シリアルポートの受信データをよみとる。

サンプルコードを次に示します。

Imports System.IO.Ports
Public Class Form1
Private WithEvents serialPort As New SerialPort()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' 设置串口属性
serialPort.PortName = "COM1"
serialPort.BaudRate = 9600
serialPort.Parity = Parity.None
serialPort.DataBits = 8
serialPort.StopBits = StopBits.One
' 打开串口
serialPort.Open()
End Sub
Private Sub serialPort_DataReceived(sender As Object, e As SerialDataReceivedEventArgs) Handles serialPort.DataReceived
' 读取串口接收到的数据
Dim data As String = serialPort.ReadLine()
' 处理接收到的数据
' ...
End Sub
Private Sub Form1_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
' 关闭串口
serialPort.Close()
End Sub
End Class

フォームロード時にシリアルポートを開き、シリアルポートデータ受信イベントハンドラを登録して受信したデータ処理を行うイベントハンドラとしてForm1_Loadが配置されています。シリアルポートデータ受信イベントハンドラは、シリアル通信でデータを受信した際にトリガーされ、シリアルポートのReadLine()メソッドで1行分のデータを読み取り、その内容に応じた処理を実行します。

シリアルポートオブジェクトを使用する前に、コンピュータに適切なシリアルポートドライバーがインストールされていることを確認する必要があります。また、シリアル通信にはハードウェアに関する知識が必要であり、実際の状況に応じて正しいシリアルポート属性を設定する必要があります。

bannerAds