掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VB2005のシリアル通信で (ID:138984)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
シリアル通信で制御しようと Public Class RS232CForm Dim ADRS As Integer '後で書き付け足した場所 Dim DT As Integer '後で書き付け足した場所 Private Sub RS232CForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load With ComSerialPort .PortName = "COM4" ' 通信ポートはCOM4 .BaudRate = 4800 ' 通信速度は9600bps .DataBits = 8 ' データ長は8ビット .Parity = IO.Ports.Parity.Even ' パリティチェックなし .StopBits = IO.Ports.StopBits.One ' ストップビットは1 ' ハードウェアによるハンドシェイク .Handshake = IO.Ports.Handshake.None .RtsEnable = True ' RTSラインを有効にする End With End Sub Private Sub ConnectButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ConnectButton.Click Try ' 通信ポートが開いているかどうかの判定 If ComSerialPort.IsOpen = False Then ' 通信ポートを開く場合の処理 ComSerialPort.Open() ' 通信ポートを開く ConnectButton.Text = "通信停止" Else ' 通信ポートを切断する場合の処理 ComSerialPort.Close() ' 通信ポートを切断 ConnectButton.Text = "通信開始" End If Catch ex As Exception ' 通信ポートの接続・切断時のエラー処理 MessageBox.Show(ex.Message, "接続エラー", _ MessageBoxButtons.OK, MessageBoxIcon.Error) End Try End Sub Private Sub SendButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SendButton.Click ' 通信ポートが開いているかどうかの判定 If ComSerialPort.IsOpen Then Try ' データの送信 ADRS = &H80 Or &H7 '後で書き付け足した場所 ComSerialPort.WriteLine(ADRS) Catch ex As Exception ' 送信エラー時の処理 MessageBox.Show(ex.Message, "送信エラー", _ MessageBoxButtons.OK, MessageBoxIcon.Error) End Try Else MessageBox.Show("通信が開始されていません", "送信エラー", _ MessageBoxButtons.OK, MessageBoxIcon.Error) End If End Sub ' デリゲート型の宣言 Delegate Sub RecieveDataDelegate(ByVal RecieveData As String) ' デリゲート型のプロシージャを宣言 Private Sub SetRecieveData(ByVal DataString As String) RecieveDataTextBox.Text &= DataString End Sub ' SerialPortコントロールのDataReceivedイベントハンドラ Private Sub ComSerialPort_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles ComSerialPort.DataReceived Dim RecieveData As String ' デリゲート型の変数の宣言と生成 Dim recieve As New RecieveDataDelegate(AddressOf SetRecieveData) Try ' データの受信 Dim D1 As Integer DT = &H10 Or D1 D1 = 0 RecieveData = ComSerialPort.ReadLine Catch ex As Exception ' 受信エラー時の処理 RecieveData = ex.Message End Try 'デリゲート型のプロシージャを呼び出す Invoke(recieve, RecieveData) End Sub End Class っというコードをかきました。 送信ができているんですが何も表示されません。 どういうふうにしたら表示できるかご教授を願いします。 自分ではもうわかりません
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.