Ankündigung

Einklappen
Keine Ankündigung bisher.

Bitoperationen mit variablen

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

    Bitoperationen mit variablen

    Hallo zusammen!

    Auch auf die Gefahr das die Frage schon behandelt wurde:
    Ich würde gerne die Uhrzeit für eine Zeitschaltuhr im Flash speichern.
    Mein "normaler" Ansatz wäre es, Stunde und Minute in einem 16-bit Wert zu speichern, und diese beim Systemstart wieder in MSB und LSB zu trennen.

    Irgendwie finde ich aber dazu keine Operationen wie bitweises-oder ....
    Gibt's die nicht?

    #2
    Ich hab's grad nicht recht greifbar, aber mit shift(), or, and und mod(), not(!) kommst Du recht weit...

    Damit habe ich mal alle Wochentage auf ein Byte gespeichert und wieder ausgelesen - der Code ist allerdings nicht kommentiert

    aber vielleicht zündet das ja was bei Dir:

    [highlight=epc]
    //Tageseinstellung
    //Zurückblättern
    if pbutton(ShiftDays,pgID) == 1u08 then {
    Day@ = mod(Day@ + 8u08,9);
    } endif;
    //Vorblättern
    if pbutton(ShiftDays,pgID) == 2u08 then {
    Day@ = mod(Day@+1,9);
    } endif;
    //Hinzufügen
    if pbutton(ShiftDays,pgID) == 3u08 then {
    Name_Days = Name_Days or shift(1u16,convert(Day@,0s08));
    } endif;
    //Entfernen
    if pbutton(ShiftDays,pgID) == 4u08 then {
    Name_Days = Name_Days and !shift(1u16,convert(Day@,0s08));
    } endif;
    [/highlight]

    Kommentar


      #3
      Zitat von cds Beitrag anzeigen
      Irgendwie finde ich aber dazu keine Operationen wie bitweises-oder ....
      Gibt's die nicht?
      or, xor, and ... sind alle bitweise:
      (6 and 4) ist daher 0.
      offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
      Enertex Produkte kaufen

      Kommentar


        #4
        Zitat von enertegus Beitrag anzeigen
        or, xor, and ... sind alle bitweise:
        (6 and 4) ist daher 0.
        Peinsam, wie konnte ich das "xor" vergessen...

        Kommentar


          #5
          Danke für die Info. Offensichtlich habe ich da nicht richtig im Manual gesucht.
          Damit habe ich ja was ich brauche ....

          Gruß
          Carsten

          Kommentar


            #6
            Zitat von enertegus Beitrag anzeigen
            or, xor, and ... sind alle bitweise:
            (6 and 4) ist daher 0.
            Ist das dann nur beim eibPC so, oder wird die Mathematik hier neu erfunden???
            BR
            Marc

            Kommentar


              #7
              ich hoffe, dass es auch beim EibPC NICHT so ist!
              Bin ich mir aber recht sicher....
              ....und versuchen Sie nicht erst anhand der Farbe der Stichflamme zu erkennen, was Sie falsch gemacht haben!

              Kommentar


                #8
                Zitat von Uwe! Beitrag anzeigen
                ich hoffe, dass es auch beim EibPC NICHT so ist!
                Bin ich mir aber recht sicher....
                Klar, zu schnell getippt:
                [highlight=epc]
                [EibPC]
                x= 6 and 4
                y= 4 and 8
                [/highlight]
                Code:
                Wert von Objekt 248 (y) abfragen:
                % /home/michi/Test/nconf -q 248 192.168.22.167
                % Wert von Objekt 248: 00 00 00 00 {2014-12-09 09:37:14}
                % Typ: positive Ganzzahl
                % Wert: 0
                % 
                % Wert von Objekt 246 (x) abfragen:
                % /home/michi/Test/nconf -q 246 192.168.22.167
                % Wert von Objekt 246: 04 00 00 00 {2014-12-09 09:37:14}
                % Typ: positive Ganzzahl
                % Wert: 4
                offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                Enertex Produkte kaufen

                Kommentar

                Lädt...
                X