Smarty160484
Level-2
- Beiträge
- 194
- Reaktionspunkte
- 8
-> Hier kostenlos registrieren
Guck ich mir bei der nächsten Gelegenheit noch mal an.Das mit dem #OUR_Störung_aktiv funktioniert aber damit noch nicht. Es wird so nur dann gesetzt, sofern das oberste Bit gesetzt ist. Zudem hast du noch eine Schleife in der Schleife, das soll wohl auch nicht so sein? Wenn du den Code als Code postest gehen auch die Einrückungen nicht verloren. #OUT_Störung_aktuell soll ja immer die erste Störung darstellen? Dann darf die auch nur bei der ersten Störung beschrieben werden. So ungefähr:
Code:#TempBool := FALSE; FOR #TEMP_Index_Störung := 0 TO #Anzahl_Störungen DO IF #STAT_Störungen[#TEMP_Index_Störung] THEN #STAT_Störungen_gespeichert[#TEMP_Index_Störung] := TRUE; //#OUT_Störung_aktiv := TRUE; IF NOT #TempBool THEN #OUT_Störung_aktuell := #TEMP_Index_Störung; END_IF; #TempBool := TRUE; //EXIT; ELSE //#OUT_Störung_aktiv := false; //#OUT_Störung_aktuell := 0; END_IF; IF #IN_Quit THEN #STAT_Störungen_gespeichert[#TEMP_Index_Störung] := FALSE; END_IF; END_FOR; #OUT_Störung_aktiv := #TempBool; FOR #TEMP_index_Störungen_Word := 0 TO #Anzahl_Störungen_to_Word DO #STAT_Sörungen_Word [#TEMP_index_Störungen_Word] := ROL(IN := #STAT_Störungen_to_Word [#TEMP_index_Störungen_Word], N := 8); END_FOR;
