2009-08-07 18 views
24

Ich beginne gerade zu lernen, wie ich Daten von meiner Hardware über die C# GUI senden und empfangen kann.Lesen und Schreiben über den seriellen Port

Kann jemand bitte ein Detail schreiben, wie man Daten von der seriellen Schnittstelle zu lesen?

+0

möglich Duplikat [Verwalten von seriellen Schnittstellen in C#] (http://stackoverflow.com/questions/7275084/managing-serial-ports-in-c-sharp) –

+0

Die andersherum: Der verlinkte Beitrag ist ein Duplikat von diesem. Bitte verwenden Sie diese Frage als kanonisches Duplikat. – Lundin

Antwort

57

SerialPort (RS-232 Serial COM Port) in C# .NET
Dieser Artikel beschreibt, wie die SerialPort Klasse in .NET verwenden, um Daten zu lesen und schreiben, festzustellen, welche serielle Ports auf Ihrem Rechner zur Verfügung stehen und wie Sie Dateien zu senden. Es deckt sogar die Pinbelegung am Port selbst ab.

Beispielcode:

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()); 
    } 
    } 
} 
Verwandte Themen