Ankündigung

Einklappen
Keine Ankündigung bisher.

getaddress()

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

    getaddress()

    Ich habe einen Code, den ich gerne vervielfältigen möchte.
    Einen Makro habe ich nicht verstanden, deshalb wollte ich die notwendigen GA's gerne einlesen und dann weiterverarbeiten.
    Hierzu habe ich
    Code:
    OG_BAD_HVAC_VORWAHL_GA      = getaddress("OG Bad HVAC Vorwahl-4/2/67")
    OG_BAD_HVAC_VORWAHL         = read(address(OG_BAD_HVAC_VORWAHL_GA));
    if "OG Bad HVAC Modus-4/2/66" == 0u08 then write(address(OG_BAD_HVAC_VORWAHL_GA), 1u08) endif;  ​
    versucht.
    Bringt mir aber den Fehler:
    Datei: "C:\Users\Hoegg\Desktop\EibStudioWorkspace\Hoe gg_H offeldstr_3_2_tmp\tmpMacroFuncOut.txt" wurde geschrieben
    Laufzeitfehler:
    ! Funktion oder Ausdruck hat keinen Rückgabewert 4-tes Argument von : >write("OG Bad HVAC Vorwahl-4/2/67",OG_BAD_HVAC_VORWAHL)< !
    ID:28
    EibParser wurde mit Fehler beendet.​

    Im Handbuch ist das Beispiel aber genau so....
    Code:
    [EibPC]
    a=getaddress("Dimmer-1/1/27")
    if htime(12,00,00) then read(address(a)) endif
    if htime(12,30,00) then write(address(a),16) endif​
    Any Ideas?
    never fummel a running system...

    #2
    Zeile 2: read() sendet eine Leseanforderung, gibt aber nicht das Ergebnis zurück. Das erhältst du automatisch bei entsprechender Zuweisung, z.B. bei
    Code:
    OG_BAD_HVAC_VORWAHL = address(OG_BAD_HVAC_VORWAHL_GA);
    Im Handbuch-Beispiel wird die Leseanforderung durch den htime() aktiviert.

    Wenn du etwas ins Detail gehst, was du realisieren möchtest, kann ich ggf. auch beim Makro helfen.

    Kommentar


      #3
      danke, eigentlich ist mein Ziel, in einer Logik die GA-s zu benennen und dann vollständig mit den Variablen zu arbeiten.
      wenn ich eine Adresse mit Getadress auf eine Variable lege, dann kann ich die mit write(address...,xx) wieder beschreiben.
      Aber wie komme ich an den eigentlich dahinter stehenden Wert, ohne die Adresse noch zusätzlich anzusprechen?
      never fummel a running system...

      Kommentar


        #4
        Das geht derzeit nicht. Die Funktion gaimage() liefert die Daten, die zuletzt an eine GA gesendet wurden, die von einem u16-Objekt reprüsentiert wird. Dabei konvertiert sie die Daten aber als String, und so wird z.B. aus einer 1 eine 31 (ASCII-Repräsentation von der Zeichenkette "1").

        Ich habe aber noch nicht wirklich verstanden, warum du das so machst. Vermutlich gibt es da einen anderen Weg.

        Kommentar

        Lädt...
        X