Einlesen nur nach Benutzung vonHyperTerminal möglich(gelöst)

Alles rund um die Programmierung mit Qt
Antworten
Thorvga
Beiträge: 10
Registriert: 14. November 2009 08:10

Einlesen nur nach Benutzung vonHyperTerminal möglich(gelöst)

Beitrag von Thorvga »

Hallo,

mit viel hin und her habe ich es geschafft eine COM-Port zu öffnen und auch die Signale rauszulesen.
Die Einstellungen sind fix gewählt:
Bits pro Sekunde 9600
Datenbits 8
Parität keine
Stopbits 1
Flusssteuerung Hardware

Das komische bzw interessante, aber zur Zeit nicht erfreuliche Effekt ist, dass mein Programm die vom Scanner eingelesenen Barcodes genau dann erst richtig ließt, wenn ich mit dem Hyperterminal einmal die Verbinsung aufgebaut habe. Danach funktioniert es super bis ich den PC runterfahre. Wenn ich ihn hochfahre will kein Programm keine anständigen Werte erhalten, aber wenn ich HyperTermin connecte und danach auch schließe, dann plötzlich schon ...

Daher vermute ich, dass wohl noch eine kleine Einstellung fehlt?
Also als Quellcode hab ich:

Code: Alles auswählen

port = new QextSerialPort("COM1");
    port->setBaudRate(BAUD9600);
    port->setFlowControl(FLOW_OFF);
    port->setDataBits(DATA_8);
    port->setStopBits(STOP_1);
    port->setParity(PAR_NONE);
    port->open(QIODevice::ReadOnly)
Kann mir da vielleicht einer helfen?
Danke für euer Bemühen.

Gruß
Thorvga
Zuletzt geändert von Thorvga am 18. November 2009 16:58, insgesamt 1-mal geändert.
RavenIV
Beiträge: 267
Registriert: 21. Januar 2009 14:24
Wohnort: Waldshut

Beitrag von RavenIV »

Versuch mal, erst den Port zu öffnen und dann erst Baudrate und die anderen Parameter zu setzen.

Als kleiner Tip noch:
Schau Dir doch als Ersatz für QextSerialPort das QSerialDevice mal an:
http://fireforge.net/projects/qserialdevice/
Lass Dich nicht von der Versionsnummer abschrecken. V_0.1.0 läuft bei mir stabil.
Linux, das längste Text-Adventure aller Zeiten
kuzulis
Beiträge: 25
Registriert: 30. September 2009 14:55
Wohnort: Russland, Brjansk
Kontaktdaten:

Beitrag von kuzulis »

Sie können versuchen, die neueste Version aus dem SVN-Nutzung
http://fireforge.net/snapshots.php?group_id=199

PS: Es traten bei kleinen Änderungen, aber die Dokumentation ist noch nicht fertig. Ich glaube, es ist nicht kritisch für Sie:)
Thorvga
Beiträge: 10
Registriert: 14. November 2009 08:10

Beitrag von Thorvga »

Hallo,

ich bedanke mich bei Ihnen.
Der Hinweis, zuerst den Port zu öffnen und anschließend die Parameter zu setzen hat mich auch zur Lösung geführt, so dass mein Programm fertig gestellt werden konnte.
Hätte nicht gedacht, dass dies eine solche Auswirkung haben kann. Ich habe das Beispiel einfach aus der Internet genommen und bis auf die Kleinigkeit lief es ja auch.

Ich bedanken mich.

Gruß
Thorvga
Antworten