Visual studio c # робота з послідовним портом, pc, programming

В недалекому минулому для роботи з Serial Port в середовищі .Net 1.1, ми повинні були використовувати або Windows API. або використовувати управління з сторонніх бібліотек. У середовищі .Net 2.0 (і в більш пізніх версіях .NET) компанія Microsoft додала підтримку послідовного порту включенням класу SerialPort як частини простору імен System.IO.Ports. Реалізація класу SerialPort зроблена дуже прямо і очевидно. Щоб створити екземпляр класу SerialPort class, просто передайте опції SerialPort конструктору класу:

Для прийому даних нам потрібно створити обробник події EventHandler для "SerialDataReceivedEventHandler":

Ви можете також встановити інші опції, такі як ReadTimeout і WriteTimeout (таймаут читання і запису):

Як тільки Ви готові використовувати послідовний порт, Вам потрібно відкрити його:

Зараз ми готові прийняти дані. Однак щоб записати ці дані в область введення TextBox на формі, нам потрібно створити так званого делегата (delegate). Бібліотеки .Net не дозволяють межпотоковое взаємодія (cross-thread action), так що нам потрібно використовувати делегат. Делегат використовується для запису в потік призначеного для користувача інтерфейсу (User Interface, UI) з іншого потоку (НЕ UI).

Ми створимо тепер метод "sp_DataReceived", який буде виконаний при надходженні даних в послідовний порт:

Тепер створимо наш метод "si_DataReceived":

Visual studio c # робота з послідовним портом, pc, programming

Схожі статті