Пример верхнего кода, кажется, указывает на то, что он должен выполняться в отдельном потоке (что имело бы смысл), поэтому добавьте кнопку запуска в форму и добавьте обработчик события Click
.
Я просто взял приведенный ниже код из здесь и немного переформатировал его.
В этом обработчике событий напишите что-то вроде:
ThreadStart myThreadDelegate = new ThreadStart(ThreadWork.DoWork);
Thread myThread = new Thread(myThreadDelegate);
myThread.Start();
А затем создайте класс, подобный этому:
public class ThreadWork
{
public static void DoWork()
{
// put your top half code in here, the bit that does the actual serial communication
}
}
А затем добавьте обработчик событий port_DataReceived
, которого ожидает ваш код.