Step5 AG95u-Problem mit FBs

Zuviel Werbung?
-> Hier kostenlos registrieren
Wow!

Mensch, Ihr seid aber auf Zack!
Ok, das mit den sich überschneidenden Merkern war doof von mir.
Aber das mit den Zeigern war mir echt nicht klar. Wusste gar nicht, daß Step5 sowas konnte. Hervorragend! Jetzt weiß ich auch warum einige andere Sachen bei mir nicht funktioniert haben.

Vielen Dank, und einen schönen Abend an alle.
Ich berichte dann ob es getan hat.

Gruß,
Aksels
 
Funzt! Schaltuhr fertig

Klappt hervorräkelnd.

Damit jemand anderes auch noch Spaß damit hat hier der Code.
Es ist eine Schaltuhr, die KF-Worte der form 2200 (als Uhrzeit) aus DBs frisst und ausspuckt, ob die Schaltuhr aktiv ist oder nicht.
Die Zeit hole ich aus dem DB11 der von der DZF77 Funkuhr befüttert wird, die man auch in diversen Auktionshäusern bekommt (Stunde DW21; Minuten DW20). Dort stehen die Stunden und Minuten als eigene Worte da. Deswegen, und wegen OP, in dem die Zeiten leicht eingegeben werden können sollen, die viele Umrechnerei.
Ich brauche den DB20 als Zwischenspeicher, damit ich nicht so viel Umschalten muss.

NAME :SchUhr
BEZ :MDB E/A/D/B/T/Z: B
BEZ :VON E/A/D/B/T/Z: E BI/BY/W/D: W
BEZ :BIS E/A/D/B/T/Z: E BI/BY/W/D: W
BEZ :ISON E/A/D/B/T/Z: A BI/BY/W/D: BI

0011 :A -DB_DZF DB11
0012 :L -DW21 DW21
0013 :A -DB_Tmp_FB10 DB20
0014 :T -DW0 DW0
0015 :A -DB_DZF DB11
0016 :L -DW20 DW20
0017 :A -DB_Tmp_FB10 DB20
0018 :T -DW1 DW1
0019 :B = MDB
001A :L = VON
001B :A -DB_Tmp_FB10 DB20
001C :T -DW2 DW2
001D :B = MDB
001E :L = BIS
001F :A -DB_Tmp_FB10 DB20
0020 :T -DW3 DW3
0021 :L -DW2 DW2
0022 :L -DW3 DW3
0023 :<=F
0024 :SPB = M001
0025 :L -DW3 DW3
0026 :L KF +2400
0028 :+F
0029 :T -DW3 DW3
002A M001 :L KF +100
002C :T -DW4 DW4
002D :SPA -FB242 FB242
002E NAME :MUL:16
002F Z1 > -DW0 DW0
0030 Z2 > -DW4 DW4
0031 Z3=0 > -M10.6 M10.6
0032 Z32 > -DW5 DW5
0033 Z31 > -DW6 DW6
0034 :L -DW6 DW6
0035 :L -DW1 DW1
0036 :+F
0037 :T -DW6 DW6
0038 :L -DW6 DW6
0039 :L -DW2 DW2
003A :<=F
003B := -M10.6 M10.6
003C :L -DW6 DW6
003D :L KF +2400
003F :+F
0040 :L -DW3 DW3
0041 :<=F
0042 := -M10.7 M10.7
0043 :U -M10.6 M10.6
0044 :U -M10.7 M10.7
0045 :SPB = M002
0046 :SPA = M003
0047 M002 :L -DW6 DW6
0048 :L KF +2400
004A :+F
004B :T -DW6 DW6
004C M003 :L -DW6 DW6
004D :L -DW2 DW2
004E :>=F
004F := -M10.7 M10.7
0050 :L -DW6 DW6
0051 :L -DW3 DW3
0052 :<=F
0053 := -M10.6 M10.6
0054 :U -M10.7 M10.7
0055 :U -M10.6 M10.6
0056 := = ISON
Wird dann so Aufgerufen:

NETZWERK 4 Badpumpe Zeit
0014 :SPA -FBSchUhr FB10
0015 NAME :SCHUHR
0016 MDB > -DBSchaltuhrZeiten DB10 (B/)
0017 VON > -DW12 DW12 (E/W)
0018 BIS > -DW13 DW13 (E/W)
0019 ISON > -MBadSchUhrEin M7.3 (A/BI)
001A :***
Lustigerweise geht das jetzt auch mit dem DW13.

Das ganze gibts dann noch als Doppelschaltuhr (Heizungsmenschen wissen warum):

NAME :SchUhr2x
BEZ :MDB E/A/D/B/T/Z: B
BEZ :ZE_1 E/A/D/B/T/Z: E BI/BY/W/D: W
BEZ :ZE_2 E/A/D/B/T/Z: E BI/BY/W/D: W
BEZ :ZE_3 E/A/D/B/T/Z: E BI/BY/W/D: W
BEZ :ZE_4 E/A/D/B/T/Z: E BI/BY/W/D: W
BEZ :ISON E/A/D/B/T/Z: A BI/BY/W/D: BI

0017 :B = MDB
0018 :L = ZE_1
0019 :A -DB21 DB21
001A :T -DW0 DW0
001B :B = MDB
001C :L = ZE_2
001D :A -DB21 DB21
001E :T -DW1 DW1
001F :B = MDB
0020 :L = ZE_3
0021 :A -DB21 DB21
0022 :T -DW2 DW2
0023 :B = MDB
0024 :L = ZE_4
0025 :A -DB21 DB21
0026 :T -DW3 DW3
0027 :SPA -FBSchUhr FB10
0028 NAME :SCHUHR
0029 MDB > -DB21 DB21 (B/)
002A VON > -DW0 DW0 (E/W)
002B BIS > -DW1 DW1 (E/W)
002C ISON > -M12.0 M12.0 (A/BI)
002D :SPA -FBSchUhr FB10
002E NAME :SCHUHR
002F MDB > -DB21 DB21 (B/)
0030 VON > -DW2 DW2 (E/W)
0031 BIS > -DW3 DW3 (E/W)
0032 ISON > -M12.1 M12.1 (A/BI)
0033 :O -M12.0 M12.0
0034 :O -M12.1 M12.1
0035 := = ISON
DB21 wieder als Zwischenspeicher mit 4 KF Worten.

Hier nicht Db20 nehmen. Beisst sich! :rolleyes:

Danke an die netten Antworter.

Gruß,
Aksels

P.S.: Vielleicht entdeckt noch jemand Fehler, oder Verbesserungen/Verkürzungen?
 
Zurück
Oben