Serial Port nicht erhalten, keine Daten
Ich bin versucht, zu schreiben eine einfache c# - Konsolenanwendung für Lesen/schreiben von einem seriellen port, kommuniziert mit einem Arduino, hakte ich habe bis. Das problem, dass ich in ist dass ich schreiben kann auf dem Arduino kein problem, aber ich bin nicht in der Lage zu erhalten, alle Daten zurück. Meine seriellen Schnittstelle SerialDataReceivedEventHandler
ist nicht immer gefeuert werden, aber ich vermute, dass diese beiden Probleme zusammenhängen.
Ich weiß, es ist nicht mein Arduino, die das problem verursacht, weil bei der Verwendung der Arduino-IDE bin ich in der Lage, Daten zu empfangen, ohne Probleme. Hier ist, was ich habe code kluge jetzt:
SerialPort sPort = new SerialPort();
sPort.PortName = SerialPort.GetPortNames()[0];
sPort.BaudRate = 9600;
sPort.Parity = Parity.None;
sPort.DataBits = 8;
sPort.StopBits = StopBits.One;
sPort.RtsEnable = false;
sPort.Handshake = Handshake.None;
sPort.DataReceived += new SerialDataReceivedEventHandler(sPort_dataReceived);
sPort.ErrorReceived += new SerialErrorReceivedEventHandler(sPort_ErrorReceived);
sPort.Open();
Console.Read();
sPort.Write("tt_calib");
while (true)
{
if (sPort.ReadExisting() != string.Empty)
Console.WriteLine(sPort.ReadExisting());
}
Ich bin mir bewusst, dass ich nicht in der Nähe des Hafens in diesem code, dass ist nicht das Problem, da bin ich in der Lage, erneut ausführen und öffnen Sie es jedes mal. Dieser code ist auch nicht in der endgültigen form, die ich bin versucht zu bekommen, das lese-event arbeiten, so dass ich reagieren kann, um verschiedene Nachrichten unterschiedlich. Ich habe gelesen, was scheint, wie jede Frage, aber keine Lösung die ich gefunden habe, scheint den trick tun.
Dies ist ein C# .NET 4.5-Konsole-Anwendung läuft auf Windows 8.1
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es endete als eine dumme, einfache Frage. Statt
sPort.RtsEnable = false;
es solltetrue
. Alle Veranstaltungen jetzt trigger und ich bin in der Lage zu Lesen.Ich hatte das exakt gleiche Problem und erkannte schließlich, dass meine hardware-flow control-Einstellung im bios konfigurierbar und meine Einstellung war DEAKTIVIERT! doh