Lipperlandstern
Level-3
- Beiträge
- 6.420
- Reaktionspunkte
- 1.967
-> Hier kostenlos registrieren
Hallo Kollegen.
Ich habe einen Baustein (siehe weiter unten) bei dem am Ausgang ein Bit gesetzt werden soll. Diesen Baustein habe ich schon 100fach eingesetzt und als Ausgang immer einen Merker benutzt. Bei meinem aktuellen Projekt habe ich mal ein DBX benutzt und der Ausgang wird nicht mehr gesetzt sondern nur zugewiesen. Das heisst sobald das Signal #lightbarrier 0 wird , wird auch der Ausgang 0.
Warum gibt es da einen Unterschied zwischen Merker (z.B. M450.0) und Datenbit z.B. DB1032.DBX0.1)
Das Datenbit wird an anderen Stellen nur gelesen und an keiner Stelle geschrieben. Auch nicht das Byte, Word oder Doppelwort. Ein Überschreiben findet nicht statt. Ich habe auch mal Testweise einen neuen DB erstellt und bekam das gleiche Ergebnis.
Hat da jemand eine Erklärung ?
Ich habe einen Baustein (siehe weiter unten) bei dem am Ausgang ein Bit gesetzt werden soll. Diesen Baustein habe ich schon 100fach eingesetzt und als Ausgang immer einen Merker benutzt. Bei meinem aktuellen Projekt habe ich mal ein DBX benutzt und der Ausgang wird nicht mehr gesetzt sondern nur zugewiesen. Das heisst sobald das Signal #lightbarrier 0 wird , wird auch der Ausgang 0.
Warum gibt es da einen Unterschied zwischen Merker (z.B. M450.0) und Datenbit z.B. DB1032.DBX0.1)
Das Datenbit wird an anderen Stellen nur gelesen und an keiner Stelle geschrieben. Auch nicht das Byte, Word oder Doppelwort. Ein Überschreiben findet nicht statt. Ich habe auch mal Testweise einen neuen DB erstellt und bekam das gleiche Ergebnis.
Hat da jemand eine Erklärung ?
Code:
L #temporarybuffer
L 30000
<I
SPB M005
L #delaytime
T #temporarybuffer
M005: NOP 0
U #lightbarrier
U #drive
SPB M001
SPA M002
M001: NOP 0
L #temporarybuffer
L 1
+I
T #temporarybuffer
M002: NOP 0
UN #lightbarrier
SPB M003
SPA M004
M003: NOP 0
L 0
T #temporarybuffer
M004: NOP 0
L #temporarybuffer
L #delaytime
>=I
S #signal_ok