Принимаемые данные с датчика через Serial port преобразовать в RGB - C#

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

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

Всем доброго времени суток! Стоит одна задача. Необходимо, получая строки с датчика цвета, поступающего в сериал порт, принимать на компьютере и показывать цвет приходящий с сериал порта датчика в виде(пример): 255 123 234 До изменения цвета какого-либо компонента дело даже не дошло. я остановился на записи данных с порта. Возникает исключение "Ссылка на объект не указывает на экземпляр объекта". Может я совсем неправильно что-то делаю? С C# начал знакомство недавно. Очень жду помощи и советов. И не совсем понимаю как можно будет организовать динамическую смену фона какого-либо компонента на форме.. Благодарю за всяческую помощь
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO.Ports;
 
namespace WindowsFormsApplication4
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        SerialPort mySP = new SerialPort("COM5", 57600);
        public event SerialDataReceivedEventHandler DataReceived;
        int[] col;
        public void button1_Click(object sender, EventArgs e)
        {
            mySP.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
            mySP.Open();
 
        }
        public void DataReceivedHandler(object sender,SerialDataReceivedEventArgs e)
        {
            for (int i = 0; i < 3; i++)
            {
                col[i]=Convert.ToInt32(mySP.ReadLine());
            }

        }
 
    }
}

Решение задачи: «Принимаемые данные с датчика через Serial port преобразовать в RGB»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            button1.Click += (sender, e) =>
                {
                    byte red = 240;
                    byte green = 21;
                    byte blue = 128;
 
                    this.BackColor = Color.FromArgb(red, green, blue);
                };
        }
    }
}

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


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

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

14   голосов , оценка 3.857 из 5
Похожие ответы