Wolfsblut80
Grünschnabel
Hallo Forum-Gemeinde,
zunächst einmal vielen vielen Dank Eure ganzen Beiträge und die Antworten haben es mir als reiner C / C++ Anfänger ermöglicht bis hierher zu kommen.
Aber nun... Nun hänge ich...
Und leider finde ich zu meinem Problem keinen adäquaten Threat oder eine all zu hilfreiche Antwort. Mein Kollege, der sich gestern das Problem schon mal angeschaut hat, kann sich darauf auch keinen Reim machen. Und zwar geht es um Folgendes:
Ich habe ein kleines Programm geschrieben mit welchem ich über die serielle Schnittstelle ein Gerät ansteuern kann (es liegt ein Code Protokoll des Gerätes vor). Die Kommunikation läuft in drei Schritten:
1. Ansprechen der Schnittstelle und vorbereiten auf Datenempfang.
2. Übertragen des Befehls, der ausgeführt werden soll.
3. Beenden der Kommunikation (Befehl wie in 1.)
Wenn ich nun das Programm ausführe, so läuft es jedes zweite Mal nur bis zur ersten WaitCommEvent Abfrage (rot und fett makiert im Text in der Anlage). Sprich: Ich führe das Programm aus, es läuft tadelos... ich führe es erneut aus, dann wird der erste Befehl (ENQ) gesendet und es bricht in der Schleife bei "WaitCommEvent" ab... ich führe es wieder aus, es läuft wieder tadelos.... usw.
Ich weiss nicht warum. Ich und auch mein Koellege können das nicht erklären. Bitte helft mir. Es ist schon recht wichtig, da es auch ein Teil meiner späteren Diplomarbeit wird.
(Das ist nur ein kleiner Teil eines später großen und langen Programms. Ich bin kein Programmierer, sondern Elektrotechniker und wurde mit "die Automation musst Du programmieren" überrannt. Ich versuche immer alles alleine zu lösen, da ich es später ja auch rechtfertigen und erklären muss. Aber damit komm ich echt nicht weiter.
Den Programmteil findet ihr im Anhang. Ich hoffe, dass ihr mir helfen könnt.
Vielen Dank schon mal vorab.
Viele Grüße
Wolfsblut
zunächst einmal vielen vielen Dank Eure ganzen Beiträge und die Antworten haben es mir als reiner C / C++ Anfänger ermöglicht bis hierher zu kommen.



Aber nun... Nun hänge ich...

Ich habe ein kleines Programm geschrieben mit welchem ich über die serielle Schnittstelle ein Gerät ansteuern kann (es liegt ein Code Protokoll des Gerätes vor). Die Kommunikation läuft in drei Schritten:
1. Ansprechen der Schnittstelle und vorbereiten auf Datenempfang.
2. Übertragen des Befehls, der ausgeführt werden soll.
3. Beenden der Kommunikation (Befehl wie in 1.)
Wenn ich nun das Programm ausführe, so läuft es jedes zweite Mal nur bis zur ersten WaitCommEvent Abfrage (rot und fett makiert im Text in der Anlage). Sprich: Ich führe das Programm aus, es läuft tadelos... ich führe es erneut aus, dann wird der erste Befehl (ENQ) gesendet und es bricht in der Schleife bei "WaitCommEvent" ab... ich führe es wieder aus, es läuft wieder tadelos.... usw.
Ich weiss nicht warum. Ich und auch mein Koellege können das nicht erklären. Bitte helft mir. Es ist schon recht wichtig, da es auch ein Teil meiner späteren Diplomarbeit wird.
(Das ist nur ein kleiner Teil eines später großen und langen Programms. Ich bin kein Programmierer, sondern Elektrotechniker und wurde mit "die Automation musst Du programmieren" überrannt. Ich versuche immer alles alleine zu lösen, da ich es später ja auch rechtfertigen und erklären muss. Aber damit komm ich echt nicht weiter.
Den Programmteil findet ihr im Anhang. Ich hoffe, dass ihr mir helfen könnt.
Vielen Dank schon mal vorab.
Viele Grüße
Wolfsblut