16-Bit Wert in zwei 8-Bit Werte auftrennen

  1. Skript erstellen und Inhalt kopieren
  2. Ausgelöstes Ereignis für eine Quell-Variable (Typ: Integer) erstellen

Das Skript erstellt die zwei Variablen automatisch.


$lowid = CreateVariableByIdent($_IPS['SELF'], "LowByte", "Byte (Low)", 1);
$highid = CreateVariableByIdent($_IPS['SELF'], "HighByte", "Byte (High)", 1);

SetValue($lowid, $_IPS['VALUE'] & 0xFF);
SetValue($highid, ($_IPS['VALUE'] >> 8) & 0xFF);

function CreateVariableByIdent($id, $ident, $name, $type, $profile = "")
 {
     $vid = @IPS_GetObjectIDByIdent($ident, $id);
     if($vid === false)
     {
         $vid = IPS_CreateVariable($type);
         IPS_SetParent($vid, $id);
         IPS_SetName($vid, $name);
         IPS_SetIdent($vid, $ident);
         if($profile != "")
            IPS_SetVariableCustomProfile($vid, $profile);
     }
     return $vid;
}

paresy