2009-08-07 2 views
24

Я только начинаю узнавать, как отправлять и получать данные с моего оборудования через графический интерфейс C#.Как читать и записывать из последовательного порта

Может кто-нибудь пожалуйста, напишите подробно, как читать данные из последовательного порта?

+0

возможно дубликат [Управление последовательных портов в C#] (http://stackoverflow.com/questions/7275084/managing-serial-ports-in-c-sharp) –

+0

другой путь: связанная почта является дубликатом этого. Пожалуйста, используйте этот вопрос как канонический дубликат. – Lundin

ответ

57

SerialPort (RS-232 Serial COM Port) in C# .NET
В этой статье объясняется, как использовать SerialPort класс в .NET для чтения и записи данных, определить, какие последовательные порты доступны на вашей машине, и как отправлять файлы. Он даже покрывает назначения выводов на самом порту.

Пример кода:

using System; 
using System.IO.Ports; 
using System.Windows.Forms; 

namespace SerialPortExample 
{ 
    class SerialPortProgram 
    { 
    // Create the serial port with basic settings 
    private SerialPort port = new SerialPort("COM1", 
     9600, Parity.None, 8, StopBits.One); 

    [STAThread] 
    static void Main(string[] args) 
    { 
     // Instatiate this class 
     new SerialPortProgram(); 
    } 

    private SerialPortProgram() 
    { 
     Console.WriteLine("Incoming Data:"); 

     // Attach a method to be called when there 
     // is data waiting in the port's buffer 
     port.DataReceived += new 
     SerialDataReceivedEventHandler(port_DataReceived); 

     // Begin communications 
     port.Open(); 

     // Enter an application loop to keep this thread alive 
     Application.Run(); 
    } 

    private void port_DataReceived(object sender, 
     SerialDataReceivedEventArgs e) 
    { 
     // Show all the incoming data in the port's buffer 
     Console.WriteLine(port.ReadExisting()); 
    } 
    } 
} 
Смежные вопросы