Hallo
Ich betreibe in meinem Programm eine Serielle Schnittstelle. Eine Art universelles Terminal zum Empfangen von Daten.
Gegenstelle nicht vorgegeben. Deshalb soll die Schnittstelle möglichst umfänglich einstellbar sein.
Gibt es eine Möglichkeit die vom Treiber der jeweiligen COM-Schnittstelle unterstützten Baudraten usw.
direkt auszulesen?
Bisher läuft das bei mir so:
Liste stellt die Fähigkeiten von Treiber/Hardware dar. Diese Liste würde ich gerne direkt erhalten.
Vielen Dank schon mal
Ich betreibe in meinem Programm eine Serielle Schnittstelle. Eine Art universelles Terminal zum Empfangen von Daten.
Gegenstelle nicht vorgegeben. Deshalb soll die Schnittstelle möglichst umfänglich einstellbar sein.
Gibt es eine Möglichkeit die vom Treiber der jeweiligen COM-Schnittstelle unterstützten Baudraten usw.
direkt auszulesen?
Bisher läuft das bei mir so:
- Am Rechner vorhandene COM-Ports ermitteln und in ComboBox zur Portauswahl eintragen
- Vorgegebene Liste mit möglichen Baudraten durchfahren
- Immer einen Wert SerialPort.BaudRate zuweisen
- Mit try versuchen den Port mit dieser Baudrate zu öffnen
- Wenn es funktioniert die entsprechende Baudrate in die ComboBox für die Baudraten-Auswahl eintragen….
- Nächste Baudrate aus der Liste probieren…….
- Das ist furchtbar langsam. Je nach angeschlossener Hardware kann sich das auf 4-5 Sekunden summieren.
- Man ist nicht sicher ob man alle von der Hardware bzw. dem Treiber unterstützten Baudraten usw. in seiner
vorgegebenen Liste hat oder ob Werte fehlen. - Andererseits, je umfangreicher die Liste, desto länger dauert der Check. Manche Hardware (z.B. USB-RS232 Umsetzer)
braucht schon mal 300-400ms um festzustellen, dass eine Baudrate nicht möglich ist
Liste stellt die Fähigkeiten von Treiber/Hardware dar. Diese Liste würde ich gerne direkt erhalten.
Vielen Dank schon mal