Nico99
Level-2
- Beiträge
- 134
- Reaktionspunkte
- 12
-> Hier kostenlos registrieren
Hallo!
ich habe mehrere Datenbausteine bestehend aus einzelnen Bits (DBX)
Jeder dieser Bits löst bei 1 eine Meldung am TP aus. Insgesamt sind es an 1200 meldungen, wobei je nach Anlage die Anzahl variert.
Jetzt muss ich für ein Testsystem alle Bits in allen DB's nacheinander, alle 5 Sekunden, kurz mit einer 1 ansteuern und somit die entsprechende Störmeldung antriggern.
Es ist leider so, dass die Meldungen in verschiedenen DB's liegen. Auch die Bitfolge ist nicht fortlaufend.
Jetzt habe ich mir gedacht, man könnte 3 DB's erzeugen. In einem stehen die Nummer der DB's, in anderem die dazugehörige Byteadresse und in drittem die Bitadresse.
Dann müsste man zum Beispiel den DB1.DBW1 laden, den DB2.DBW1 laden und DB3.DBW1 laden und anschliessend zum Pointer zusammensetzen und den Pointer dann eine 1 zuweisen.
Dann müsste man die Zeit, z.B. 5 sek. abwarten und das ganze wiederholen, aber mit DBW2 u.s.w. bis Baustein durch ist.
Jetzt mein Problem: kenn mich mit Pointern wenig bis gar nicht aus. Ich kann zwar den Pointer zusammensetzten, aber wie schaffe ich es den nächsten DBW mit Adressen zu laden?
Vielleicht gibt es auch einfacheren Weg?
Ich bin sehr dankbar für jegliche Art von Ideen und Vorschlägen.
mfg
Nico
ich habe mehrere Datenbausteine bestehend aus einzelnen Bits (DBX)
Jeder dieser Bits löst bei 1 eine Meldung am TP aus. Insgesamt sind es an 1200 meldungen, wobei je nach Anlage die Anzahl variert.
Jetzt muss ich für ein Testsystem alle Bits in allen DB's nacheinander, alle 5 Sekunden, kurz mit einer 1 ansteuern und somit die entsprechende Störmeldung antriggern.
Es ist leider so, dass die Meldungen in verschiedenen DB's liegen. Auch die Bitfolge ist nicht fortlaufend.
Jetzt habe ich mir gedacht, man könnte 3 DB's erzeugen. In einem stehen die Nummer der DB's, in anderem die dazugehörige Byteadresse und in drittem die Bitadresse.
Dann müsste man zum Beispiel den DB1.DBW1 laden, den DB2.DBW1 laden und DB3.DBW1 laden und anschliessend zum Pointer zusammensetzen und den Pointer dann eine 1 zuweisen.
Dann müsste man die Zeit, z.B. 5 sek. abwarten und das ganze wiederholen, aber mit DBW2 u.s.w. bis Baustein durch ist.
Jetzt mein Problem: kenn mich mit Pointern wenig bis gar nicht aus. Ich kann zwar den Pointer zusammensetzten, aber wie schaffe ich es den nächsten DBW mit Adressen zu laden?
Vielleicht gibt es auch einfacheren Weg?
Ich bin sehr dankbar für jegliche Art von Ideen und Vorschlägen.
mfg
Nico