Gibt es eine andere Schreibweise?

bastler

Level-2
Beiträge
258
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo
Mich würde folgendes mal interessieren. Ich habe 64 Eingänge E0.0 bis E7.7 an einer Oder-Verknüpfung, von denen jeweils die positive Flanke abgefagt wird. Kommt einer dieser Eingänge wird ein Merker gesetzt und dieser Merker wird über ein Bit in einem DB zurückgesetzt. Nun hab ich das ganze in FUP geschrieben und das Netzwerk ist ziemlich lang geworden. Gibt es eine andere Programmiermöglichkeit?

MfG
computerpap
 
ich habe zwar noch nicht ganz verstanden wie du das programmiert hast, vielleicht noch ein Code-Beispiel posten.

Vielleicht kannst du auch was mit ED0 (E0.0 - E3.7) und ED4 machen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
du kansst Doppelwortweise mit WXOR_DW Baustein die Engänge aus dem Jetzt und Zyklus davor verbinden, sollte da Ergebniss nicht null rauskommen.... hast du eine Änderung...
 
oder noch besser dein ED0 und 16#FFFF mit WAND_DW verbinden, sollte da nicht Null rauskommen hast du positive Flanke.... dasselbe dann noch mal mit ED4
 
liepa: So wie du das machst würde nur ein sich ändernder Eingang Ausgewertet, ich entnehme aber der Frage (durch die Flanken Auswertung) das Jedes mal der Merker gesetzt werden soll wenn ein Eingang kommt, egal wie viele noch high melden.

So würde ich das machen :)

NETWORK

O(
L ED 0
L DB1.DBD 0
<>D
)
O(
L ED 4
L DB1.DBD 4
<>D
)
S #Merker
U #Bit_DB
R #Merker


NETWORK

CALL "BLKMOV"
SRCBLK := P#E 0.0 byte 8
RET_VAL := MW 2
DSTBLK := P#DB1.DBX 0.0 WORD 4

Edit:

sry liepa hab deinen ersten Post nicht richtig gelesen
 
Zurück
Oben