arduinoを使用してポートごとの増分を表示した後、ラベルをどのようにクリーニングしていますか?

ステファン・ミハイ・ロリンツ

Arduinoで値をインクリメントしてポートに送信し、その後、ラベルにリアルタイムで表示しようとしています。

私が置いてdelay(200)とThread.sleep(200);

namespace Receiver
{
    public partial class Form1 : Form
    {
        SerialPort port;
        public Form1()
       {

            InitializeComponent();
            this.FormClosed += new FormClosedEventHandler(Form1_FormClosed);
            if (port == null)
            {
                port = new SerialPort("COM9", 9600);//Set your board COM
                port.Open();
            }


        }
        void Form1_FormClosed(object sender, FormClosedEventArgs e)
        {
            if (port != null && port.IsOpen)
            {
                port.Close();
            }
        }

        private void Afisare_Click(object sender, EventArgs e)
        {
            while (true)
            {
                string a = port.ReadExisting();
                afisare.Text = a;
                Thread.Sleep(200);
            }
        }
    }
}

変化の中で、私はすべての値を次々と画面に表示しました。

ここに画像の説明を入力してください

EylM

Afisare_ClickUIと同じスレッドで実行されるハンドラーで無限ループを実行しています。これは、UIがコントロールの変更をレンダリングできないことを意味します。

Thread.Sleep コードはコンテキストを他のスレッドに切り替えますが、UIスレッドは切り替えません。

あなたのアプローチはタイマーを使用する必要があります

public partial class Form1 : Form
{
    private Timer _timer;

    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        _timer = new Timer();
        _timer.Interval = 200;
        _timer.Tick += _timer_Tick;
        _timer.Enabled = true;
        _timer.Start();
    }

    private void _timer_Tick(object sender, EventArgs e)
    {
        // This function will be called every 200 ms.
        // Read the information from port, update the UI.

        string a = port.ReadExisting();
        afisare.Text = a;
    }

    private void Form1_FormClosed(object sender, FormClosedEventArgs e)
    {
        _timer.Stop();

        if (port != null && port.IsOpen)
        {
            port.Close();
        }
    }
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

JavaScriptを使用してニューラルネットワークをトレーニングした後、ニューラルネットワークの重みとバイアスを保存するにはどうすればよいですか?

分類Dev

tensorflowの画像分類チュートリアルを使用して、元のトレーニングまたは検証データセットにない未表示の画像を分類するにはどうすればよいですか?

分類Dev

Readline:タブをメニュー完了として使用します。自動完了したディレクトリを「受け入れ」て次のレベルを表示するにはどうすればよいですか?

分類Dev

テキスト(リンク)の数を1増やして、実際の数で新しいテキストを作成するにはどうすればよいですか?ただし、コピーごとに+1します

分類Dev

事前にトレーニングされたモデルを使用して、画像分類のためにニューラルネットワークを最適化するにはどうすればよいですか?

分類Dev

このスクリプトメニューバーを追加しても機能しないのに、いくつかの製品を一覧表示するために以下のスクリプトを追加しようとしています。どうして?

分類Dev

HaskellライブラリLinearを使用してベクトルをどのようにスケーリングしますか?

分類Dev

ビルド後のイベントとしてtlbexpコマンドを呼び出して、Visual Studio 2019 IDEのC#EXEからタイプライブラリをエクスポートするにはどうすればよいですか?

分類Dev

モジュールを文字列としてインポートしたい場合、インポートからどのように使用しますか?

分類Dev

ブートストラップまたはjqueryを使用してボタンクリック時にポップアップ/モーダルとして部分ビューを表示するにはどうすればよいですか?

分類Dev

TwistedとjQuery(Djangoを使用)を使用して、ポーリングの長いチャットアプリを作成しようとしています。クエリをJSに戻すにはどうすればよいですか?

分類Dev

TwistedとjQuery(Djangoを使用)を使用して、ポーリングの長いチャットアプリを作成しようとしています。クエリをJSに戻すにはどうすればよいですか?

分類Dev

Netbeans を使用したスイング アプリケーションがあります。ユーザー オブジェクトをデータベース テーブルに挿入しようとしています。しかし、次のエラーが発生しています

分類Dev

Colabを使用していて、12時間では不十分なため、特定のチェックポイント(Tensorflow)からトレーニングを再開しようとしています。

分類Dev

SQLのグループごとにさまざまな「ポリシー期間」をどのようにセグメント化しますか(その後、「ポリシー期間」ごとの現在の合計を計算します)?

分類Dev

アスタリスク。ARIを使用してイベントを収集していますが、イベントを最初から最後まで単一の顧客とのやり取りにグループ化するにはどうすればよいですか?

分類Dev

どのトランスポートがwebsocketまたはポーリングを使用しているか、接続されたsocket.ioクライアントを知るにはどうすればよいですか?

分類Dev

Keen IOを使用して、ユーザーごとに最新のイベントを表示するにはどうすればよいですか?

分類Dev

splitを使用したデータとJQueryを使用してデータ全体を表示したいデータをどのように分離できますか?

分類Dev

SSISDBデータベースからT-SQLを使用して、[すべての実行の概要]レポートに表示されている「使用されているパラメーター」のリストとまったく同じものを取得するにはどうすればよいですか。

分類Dev

メモリに収まらないほど多くのデータを使用してニューラル ネットワークをトレーニングするにはどうすればよいですか?

分類Dev

クエリを使用してデータをインポートし、行の値でグループ化するにはどうすればよいですか?

分類Dev

JointJS では、ポートに対してポートのラベルをどのように配置しますか?

分類Dev

リーフレットを使用してクリックしたときに機能のプロパティをフィルタリングして表示するにはどうすればよいですか?

分類Dev

LabelListまたはMarkupListを使用して、コンテンツノードごとに2つのラベルをレンダリングしますか?

分類Dev

グーグルクラウドビルドとソースリポジトリを使用して新しくプッシュされた複数のクラウド機能をデプロイするにはどうすればよいですか?

分類Dev

MySQLの結果をフィルタリングしてユーザーごとにLIMIT1を表示するにはどうすればよいですか?

分類Dev

PFを使用してNATポートリダイレクションをどのように行いますか?

分類Dev

どのようにして車を向いている方向に動かしますか?(Pythonとタートルグラフィックスを使用)

Related 関連記事

  1. 1

    JavaScriptを使用してニューラルネットワークをトレーニングした後、ニューラルネットワークの重みとバイアスを保存するにはどうすればよいですか?

  2. 2

    tensorflowの画像分類チュートリアルを使用して、元のトレーニングまたは検証データセットにない未表示の画像を分類するにはどうすればよいですか?

  3. 3

    Readline:タブをメニュー完了として使用します。自動完了したディレクトリを「受け入れ」て次のレベルを表示するにはどうすればよいですか?

  4. 4

    テキスト(リンク)の数を1増やして、実際の数で新しいテキストを作成するにはどうすればよいですか?ただし、コピーごとに+1します

  5. 5

    事前にトレーニングされたモデルを使用して、画像分類のためにニューラルネットワークを最適化するにはどうすればよいですか?

  6. 6

    このスクリプトメニューバーを追加しても機能しないのに、いくつかの製品を一覧表示するために以下のスクリプトを追加しようとしています。どうして?

  7. 7

    HaskellライブラリLinearを使用してベクトルをどのようにスケーリングしますか?

  8. 8

    ビルド後のイベントとしてtlbexpコマンドを呼び出して、Visual Studio 2019 IDEのC#EXEからタイプライブラリをエクスポートするにはどうすればよいですか?

  9. 9

    モジュールを文字列としてインポートしたい場合、インポートからどのように使用しますか?

  10. 10

    ブートストラップまたはjqueryを使用してボタンクリック時にポップアップ/モーダルとして部分ビューを表示するにはどうすればよいですか?

  11. 11

    TwistedとjQuery(Djangoを使用)を使用して、ポーリングの長いチャットアプリを作成しようとしています。クエリをJSに戻すにはどうすればよいですか?

  12. 12

    TwistedとjQuery(Djangoを使用)を使用して、ポーリングの長いチャットアプリを作成しようとしています。クエリをJSに戻すにはどうすればよいですか?

  13. 13

    Netbeans を使用したスイング アプリケーションがあります。ユーザー オブジェクトをデータベース テーブルに挿入しようとしています。しかし、次のエラーが発生しています

  14. 14

    Colabを使用していて、12時間では不十分なため、特定のチェックポイント(Tensorflow)からトレーニングを再開しようとしています。

  15. 15

    SQLのグループごとにさまざまな「ポリシー期間」をどのようにセグメント化しますか(その後、「ポリシー期間」ごとの現在の合計を計算します)?

  16. 16

    アスタリスク。ARIを使用してイベントを収集していますが、イベントを最初から最後まで単一の顧客とのやり取りにグループ化するにはどうすればよいですか?

  17. 17

    どのトランスポートがwebsocketまたはポーリングを使用しているか、接続されたsocket.ioクライアントを知るにはどうすればよいですか?

  18. 18

    Keen IOを使用して、ユーザーごとに最新のイベントを表示するにはどうすればよいですか?

  19. 19

    splitを使用したデータとJQueryを使用してデータ全体を表示したいデータをどのように分離できますか?

  20. 20

    SSISDBデータベースからT-SQLを使用して、[すべての実行の概要]レポートに表示されている「使用されているパラメーター」のリストとまったく同じものを取得するにはどうすればよいですか。

  21. 21

    メモリに収まらないほど多くのデータを使用してニューラル ネットワークをトレーニングするにはどうすればよいですか?

  22. 22

    クエリを使用してデータをインポートし、行の値でグループ化するにはどうすればよいですか?

  23. 23

    JointJS では、ポートに対してポートのラベルをどのように配置しますか?

  24. 24

    リーフレットを使用してクリックしたときに機能のプロパティをフィルタリングして表示するにはどうすればよいですか?

  25. 25

    LabelListまたはMarkupListを使用して、コンテンツノードごとに2つのラベルをレンダリングしますか?

  26. 26

    グーグルクラウドビルドとソースリポジトリを使用して新しくプッシュされた複数のクラウド機能をデプロイするにはどうすればよいですか?

  27. 27

    MySQLの結果をフィルタリングしてユーザーごとにLIMIT1を表示するにはどうすればよいですか?

  28. 28

    PFを使用してNATポートリダイレクションをどのように行いますか?

  29. 29

    どのようにして車を向いている方向に動かしますか?(Pythonとタートルグラフィックスを使用)

ホットタグ

アーカイブ