Ankündigung

Einklappen
Keine Ankündigung bisher.

Verständnisfrage Init..

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Verständnisfrage Init..

    Hi Leute...

    hab gerade einen Code, der bei mir nicht das macht was er soll... bzw. ich
    versteh seh den Unterschied gerade nicht...

    [highlight=epc]
    Test_Init = 0b01
    Test_i=1u16

    if (Test_Init) then Test_i=0u16 endif

    if after(change(Test_i),1u64) and Test_i<10u16 then Test_i=Test_i+1u16 endif
    if Test_i==10u16 then Test_Init = AUS endif

    [/highlight]

    wenn ich diesen Code verwende hat Test_i gleich nach dem Neustart des
    Eibpc's den Wert 10... d.h. Init wird wohl gleich beim Start ausgeführt..
    oder er erkennt irgendwo eine Änderung an Test_i

    [highlight=epc]
    Test_Init = 0b01
    Test_i=0u16

    if (Test_Init) then Test_i=1u16 endif

    if after(change(Test_i),1u64) and Test_i<10u16 then Test_i=Test_i+1u16 endif
    if Test_i==10u16 then Test_Init = AUS endif

    [/highlight]

    wenn ich diesen Code verwende funktoniert es ganz normal.. ich muss
    Test_Init auf 1b01 setzten und erst dann wird Test_i = 10...

    geändert hab ich im Code nur Test_i.. das einmal beim Initiieren auf 0 beim zweiten Code auf 1 steht..

    wieso ist das so ??

    Gruß Martin
    Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

    #2
    Zitat von Brick Beitrag anzeigen
    wenn ich diesen Code verwende funktoniert es ganz normal.. ich muss
    Test_Init auf 1b01 setzten und erst dann wird Test_i = 10...
    Die Standard-Initialisierung ist 0. Daher ist bei dieser Vorinitalisierung change() ohne Wirkung.
    Wenn Du bei der Initialisierung die Variable auf 1 setzt, so wird beim ersten Durchlauf das change() aktiv, da ja von 0 auf 1 geändert wurde.
    offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
    Enertex Produkte kaufen

    Kommentar


      #3
      OK, danke.. sowas in der Art hab ich mir schon gedacht..

      irgendwie praktisch ist das aber nicht... Gerade im Bezug auf
      die change() Anweisung... wenn mal eine Variable nicht mit
      0 überwacht werden soll..

      Gruß Martin
      Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

      Kommentar


        #4
        ev. hilft ja "verriegeln" beim INIT-Vorgang
        ... and !init()
        EPIX
        ...und möge der Saft mit euch sein...
        Getippt von meinen Zeigefingern auf einer QWERTZ Tastatur

        Kommentar

        Lädt...
        X