C# Windows Forms и ком порт

Узнай цену своей работы

Формулировка задачи:

Делал программу для чтения ком-порта через readline, все было отлично! Начал другую: на ком порт приходят постоянно данные с контроллера 21, 22, 24, 21, 21, 22, это температура, эти данные должны постоянно отображаться через richTextBox или в TextBox. Отправка на ком-порт с контроллера в режиме реального времени. Я слышал о потоках но ничего для C# Windows Forms не нашел. Может кто то поможет ссылкой или кинет пример? На форме только richTextBox1. Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO.Ports;
using System.IO;
 
namespace WindowsFormsApplication2
{
    public partial class Form1 : Form
    {
 
        public Form1()
        {
            InitializeComponent();
            // Открываем порт, и задаем скорость в 9600 бод
 
            serialPort1.PortName = "COM9";
            serialPort1.BaudRate = 9600;
            serialPort1.DtrEnable = true;
            //serialPort1.RtsEnable = false;
            serialPort1.Open();
        }
 
        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            // При закрытии программы, закрываем порт
            if (serialPort1.IsOpen) serialPort1.Close();
        }

    }
}

Решение задачи: «C# Windows Forms и ком порт»

textual
Листинг программы
this.Invoke( (Action) (() => this.richTextBox1.Text = (string)serialPort1.ReadExisting()) );

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.231 из 5