-> Hier kostenlos registrieren
Guten Morgen,
habe ein kleines Problem beim Datenaustausch mit einem DP Slave.
Das Problem liegt meiner Meinung nach nicht am DP Slave selbst, eher an meinem Programm wie ich vermute.
Ich beschreibe mal im groben worum es geht.
Ich kommuniziere mit einem DP Slave, schicke einen Befehl, der DP Slave reagiert auf diesen Befehl und sendet mir Daten, so weit nicht spektakulär.
Ich bekomme Daten mit einer Maximallänge von 5 Byte, ordne die Daten die an den Peripherieeingangsadressen anstehen 2 tempvariablen zu (ein DWORD und ein BYTE).
Vergleiche den Befehl der zurück kommt und ordne die empfangenen Daten entsprechenden Stellen in einem DB zu.
Insgesamt werden Daten zu ca. 15 Befehlen geholt.
Für diese Vergleiche habe ich im Programm diverse Programmteile die je nach dem ob der entsprechende Befehl zurückgemeldet wurde bearbeitet oder übersprungen werden.
So, nun zum Problem.
Löse ich diesen "Datenholeprozess" aus, also Befehle nach und nach senden und Daten zuordnen so kommt es ab und an vor, dass die Daten eines Befehls bei einem anderen zugeordnet werden.
Es ist, wenn es passiert, immer um einen versetzt.
Habt ihr eine Idee was ich tun kann um das ganze sicherer zu machen?
Ich dachte an eine Pause zwischen den einzelnen Befehlen, falls es alles zu schnell ist.
Vielen Dank im voraus.
habe ein kleines Problem beim Datenaustausch mit einem DP Slave.
Das Problem liegt meiner Meinung nach nicht am DP Slave selbst, eher an meinem Programm wie ich vermute.
Ich beschreibe mal im groben worum es geht.
Ich kommuniziere mit einem DP Slave, schicke einen Befehl, der DP Slave reagiert auf diesen Befehl und sendet mir Daten, so weit nicht spektakulär.
Ich bekomme Daten mit einer Maximallänge von 5 Byte, ordne die Daten die an den Peripherieeingangsadressen anstehen 2 tempvariablen zu (ein DWORD und ein BYTE).
Vergleiche den Befehl der zurück kommt und ordne die empfangenen Daten entsprechenden Stellen in einem DB zu.
Insgesamt werden Daten zu ca. 15 Befehlen geholt.
Für diese Vergleiche habe ich im Programm diverse Programmteile die je nach dem ob der entsprechende Befehl zurückgemeldet wurde bearbeitet oder übersprungen werden.
So, nun zum Problem.
Löse ich diesen "Datenholeprozess" aus, also Befehle nach und nach senden und Daten zuordnen so kommt es ab und an vor, dass die Daten eines Befehls bei einem anderen zugeordnet werden.
Es ist, wenn es passiert, immer um einen versetzt.
Habt ihr eine Idee was ich tun kann um das ganze sicherer zu machen?
Ich dachte an eine Pause zwischen den einzelnen Befehlen, falls es alles zu schnell ist.
Vielen Dank im voraus.
Zuletzt bearbeitet: