Ich versuche Dezimalwert von der seriellen Schnittstelle zu lesen, die mir 1000 sendet, aber meine Funktion empfängt nur 232. Ich kann Werte bis 127 richtig empfangen Alle String-Werte korrekt empfangen.serielle Schnittstelle, die den Dezimalwert 1000 sendet, aber stattdessen 232 empfängt C#
private void mySerialPort_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
int bytes = 255;
byte[] buffer = new byte[bytes];
int i = 0;
do
{
bytes = mySerialPort.BytesToRead;
mySerialPort.Read(buffer, i, bytes);
i++;
Thread.Sleep(100);
} while (mySerialPort.BytesToRead != 0);
rxInt = BitConverter.ToInt32(buffer, 0);
this.Invoke(new EventHandler(displayDecimal));
}
Was ist die Implementierung von displayDecimal? –
Sie müssen den Sendecode anzeigen, der die Nummer codiert, sowie weitere Details des Empfängers, z. B. wie Daten dekodiert/angezeigt werden. – barny
displayDecimal Funktion hängt die empfangenen Daten in einer Textbox txt_temp, private int rxInt; private void displayDecimal (Objekt 0, EventArgs e) { txt_temp.AppendText (rxInt.ToString()); } –