ホームページ > バックエンド開発 > C++ > WinForms と Visual Studio を使用して USB シリアル ポート デバイスからデータを読み取るにはどうすればよいですか?

WinForms と Visual Studio を使用して USB シリアル ポート デバイスからデータを読み取るにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2025-01-20 23:47:13
オリジナル
338 人が閲覧しました

How Can I Use WinForms and Visual Studio to Read Data from a USB Serial Port Device?

このコードは、USB からシリアル ポートへのデバイスで動作するはずです。また、お使いの体重計でも動作する可能性があります。ポート設定の一部は、WinCT (RsCom、RsKey、RsWeight) をダウンロード/インストールすることで見つかりました。次に、Windows の [スタート] メニューの A&D WinCT で、RsCom または RsKey を選択します。 RsCom または RsKey を使用すると、USB ケーブル/接続が機能していることを簡単に確認できます。 USB シリアル デバイスで「RsKey」と「RsCom」の両方を使用したところ、正常に動作したようです。

WinForms プロジェクトを作成する

VS 2017:

Visual Studio を開きます
展開しますインストール済み
展開Visual C#
クリックWindows デスクトップ
選択Windows Forms App (.NET Framework)
プロジェクト名(名前:ReadSerialPort)を指定
クリックOK

VS 2019:

Visual Studio を開く
コードなしで続行
をクリック ファイル
選択新規
プロジェクト
C# Windows デスクトップ
をクリック Windows フォーム アプリ (.NET Framework)
次へをクリック
プロジェクト名を指定します (名前: ReadSerialPort)
作成をクリック

注: これ以降、プロセスは VS 2017 と VS 2019 の両方で同じです。

クラスを追加: SerialPortDataReceivedEventArgs

注: このクラスは、シリアル ポート デバイスから受信したデータをサブスクライバに送信するイベントで使用されます。

VS メニューで、プロジェクト
クラスの追加を選択します (名前: SerialPortDataReceivedEventArgs.cs)

SerialPortDataReceivedEventArgs.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ReadSerialPort
{
    public delegate void SerialPortDataReceivedEventHandler(object sender, SerialPortDataReceivedEventArgs e);

    public class SerialPortDataReceivedEventArgs : System.EventArgs
    {
        public string Data { get; private set; } = string.Empty;

        public SerialPortDataReceivedEventArgs(string data)
        {
            this.Data = data;
        }
    }
}
ログイン後にコピー
System.Management への参照の追加

VS メニューで、

プロジェクト選択参照の追加
アセンブリ
System.Management をチェック
OK をクリック
追加クラス: ComPorts

VS メニューで、選択します

プロジェクト

クラスの追加
(名前: ComPorts.cs)

ComPorts.cs

を選択しますクラスの追加: HelperSerialPort
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ReadSerialPort
{
    public class ComPorts
    {
        public List<ComPortInfo> Ports { get; set; } = new List<ComPortInfo>();
    }

    public class ComPortInfo
    {
        public string Name { get; set; }
        public string PortName { get; set; }

        public ComPortInfo()
        {

        }

        public ComPortInfo(string name, string portName)
        {
            this.Name = name;
            this.PortName = portName;
        }
    }
}
ログイン後にコピー

VS メニューで、選択します

プロジェクト

クラスの追加
(名前: HelperSerialPort.cs)

HelperSerialPort.cs

//if .NET 5 を使用して、NuGet パッケージをインストールします。 System.IO.Ports

System を使用;

System.Collections.Generic を使用;

System.Linq を使用;
System.Text を使用;
System.Threading.Tasks を使用;
System.IO.Ports を使用;
System.Diagnostics を使用;
を使用System.Management;

名前空間 ReadSerialPort

{


以上がWinForms と Visual Studio を使用して USB シリアル ポート デバイスからデータを読み取るにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート