C# Serielle Schnittstelle Schreiben Byte
Schreiben wird ein einzelnes byte an den seriellen port .NET 4.0 in C# führt
InvalidOperationException wurde unhandled by user code
Jedes mal, wenn ein byte gesendet wird, um den SerialPort.
Wie Schreibe ich ein einzelnes byte an den seriellen port?
//Serial Init
//Full fledged constuctor
public NetCommManager(String portName, TransmissionType trans, String baud, String parity, String stopBits, String dataBits)
{
nc_baudRate = baud;
nc_parity = parity;
nc_stopBits = stopBits;
nc_dataBits = dataBits;
nc_portName = portName;
nc_transType = trans;
//now add an event handler
comPort.DataReceived += new SerialDataReceivedEventHandler(netComm_DataReceived);
}
Config:
_commManger = new NetCommManager(commPortNumber,
NetCommManager.TransmissionType.Text, "19200", "None", "One", "8");
Byte geschrieben werden:
_commManager.WriteByte(Convert.ToByte( 0x7B));
Sowie WriteByte
Funktion:
public void WriteByte(byte data)
{
//change data to array
//byte[] dataArray = new byte[1];
var dataArray = new byte[] {data};
//dataArray[0] = data;
comPort.Write(dataArray, 0, 1); //<-- Exception is thrown here
}
Den NetCommManager Klasse basiert sehr stark auf der dieses Beispiel
Sie sind fehlende Teil der code, der erstellt comPort-Objekt... und haben mehrere auskommentierte Zeilen für einige Grund.
Die kommentierten Zeilen sind die anderen versuche, um es in einer anderen form
+1 für die gute Leistung. Beachten Sie, dass Sie noch fehlt
tun wird. Danke!!!
Die kommentierten Zeilen sind die anderen versuche, um es in einer anderen form
+1 für die gute Leistung. Beachten Sie, dass Sie noch fehlt
comPort = new...
Teil :). Irgendwie Jeff E geschafft, Figur (+1, um die Antwort offensichtlich). Auf auskommentierte code - betrachten, wenn es eine deutlich andere Variante des Codes. Ich glaube nicht, dass es hier - so würde ich einfach entfernen es.tun wird. Danke!!!
InformationsquelleAutor DogEatDog | 2012-07-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vergessen Sie
Open()
diecomPort
: http://msdn.microsoft.com/en-us/library/ms143551.aspxInformationsquelleAutor Jeff E