Wenn ich der Registervariable mein Script zuweise, wird das HID-Gerät per Script, scheinbar immer wieder beschrieben.
Lasse ich die Zuweisung weg funktioniert es Super und wird auch nur einmal aufgerufen.
Anbei ein zusammen gesetzes Bild von der Konfiguration und den Meldungen.
Im Debugfenster des HID-Gerätes kann man sehen, dass es immer wieder angesteuert wird.
Habe leider wenig Ahnung von PHP, weiß aber nicht was ich da falsch mache, wenn ich dann Execute anklicke…
Hier mein Script:
<?
$ProduktID=1;
$VendorID=1;
$SerienNr=1;
//########################## Hole ProduktID und zeige sie ############
$ProduktID=HID_GetDeviceProductID(13116 /*[HID]*/);
//Echo "ProduktID: ". $ProduktID." ";
//########################## Hole VendorID und zeige sie ############
$VendorID=HID_GetDeviceVendorID(13116 /*[HID]*/);
//Echo "VendorID: ".$VendorID;
//######################### Hole Ser ien Nr des Geräte ############
$SerienNr=HID_GetDeviceSerial(13116 /*[HID]*/);
//Echo "VendorID: ".$SerienNr;
//########### Wenn das Gerät da ist mach mal was ############
If (($ProduktID=="1206") And ($VendorID=="5840") And ($SerienNr=="00001"))
{
echo " Das ist Helmut`s Funk-Modul Nr 1";
//# Schalte Funksteckdose Hauscode 31 Steckdose A für 2 Sekunden " Ein " #
HID_SendEvent(13116 /*[HID]*/,0 , chr(0x1F).chr(0x01).chr(0x01).chr(0x02));
}
//############## man muss nicht alle 12 Parameter übertragen #######
//HID_SendEvent(13116 /*[HID]*/,0 , chr(0x1F).chr(0x01).chr(0x01).chr(0x02).chr(0x00).chr(0x01).chr(0x00).chr(0x00).chr(0x00).chr(0x00).chr(0x00).chr(0x00));
$RegVarID =58534 /*[HID\Register Variable]*/;
$data=RegVar_GetBuffer($RegVarID);
//echo " RegVar: ". $RegVarID. " ";
echo " Buffer: ".$data." Länge: ". strlen($data). " ";
?>
Kann mit der Suchfunktion keine gleichwertige Fragestellung finden…
Edit 21:53,
habe ein 2. Script mit den beiden PWM-Anweisungen geschrieben.
Ohne Register Variabel zuweisungen klappt es wunderbar.
Weise ich der Registervariabel irgend Einen der beiden Scripte zu, wird der auf „ausführen“ geklickte Script scheinbar dann immer wieder aufgerufen.
Objektbaum dazu als Bild angehängt.
<?
$ProduktID=1;
$VendorID=1;
$SerienNr=1;
//########################## Hole ProduktID und zeige sie ############
$ProduktID=HID_GetDeviceProductID(13116 /*[HID]*/);
//Echo "ProduktID: ". $ProduktID." ";
//########################## Hole VendorID und zeige sie ############
$VendorID=HID_GetDeviceVendorID(13116 /*[HID]*/);
//Echo "VendorID: ".$VendorID;
//######################### Hole Ser ien Nr des Geräte ############
$SerienNr=HID_GetDeviceSerial(13116 /*[HID]*/);
//Echo "VendorID: ".$SerienNr;
//########### Wenn das Gerät da ist mach mal was ############
If (($ProduktID=="1206") And ($VendorID=="5840") And ($SerienNr=="00001"))
{
echo " Das ist Helmut`s Funk-Modul Nr 1 mit 2x PWM
";
//########## Setze die beiden PWM-Ausgänge auf 50% ############
HID_SendEvent(13116 /*[HID]*/,0 , chr(0x00).chr(0x00).chr(0x00).chr(0x00).chr(0x00).chr(0x00).chr(0x00).chr(0x00).chr(0x7D).chr(0x7D));
}
//############## man muss nicht alle 12 Parameter übertragen #######
//HID_SendEvent(13116 /*[HID]*/,0 , chr(0x1F).chr(0x01).chr(0x01).chr(0x02).chr(0x00).chr(0x01).chr(0x00).chr(0x00).chr(0x00).chr(0x00).chr(0x00).chr(0x00));
$RegVarID =58534 /*[HID\Register Variable]*/;
$data=RegVar_GetBuffer($RegVarID);
//echo " RegVar: ". $RegVarID. " ";
echo " Buffer: ".$data." Länge: ". strlen($data). " ";
?>