Mave99
-
Gesamte Inhalte
3 -
Benutzer seit
-
Letzter Besuch
Posts erstellt von Mave99
-
-
Hallo,
ich bastel gerade an einem Stack mit mehreren IO16 Bricklets. Dabei ist aufgefallen, dass anderes als bei IPConnection
void IPConnection::registerCallback(int $id, callable $callback, mixed $userData=NULL)
kein 3. Argument "mixed $userData=NULL" zu Verfügung steht.
Stattdessen wird nur
void BrickletIO16::registerCallback(int $id, callable $callback)
angeboten. Dies führt nun zu einem ziemlich hässlichen Konstrukt um eine Lösung dafür zu schaffen.
function cb_io1($p,$i,$v) { cb_interrupt($p,$i,$v,'io1'); } function cb_io2($p,$i,$v) { cb_interrupt($p,$i,$v,'io2'); } function cb_io3($p,$i,$v) { cb_interrupt($p,$i,$v,'io3'); } function cb_io4($p,$i,$v) { cb_interrupt($p,$i,$v,'io4'); } ... $io1->registerCallback(BrickletIO16::CALLBACK_INTERRUPT, 'cb_io1'); $io2->registerCallback(BrickletIO16::CALLBACK_INTERRUPT, 'cb_io2'); $io3->registerCallback(BrickletIO16::CALLBACK_INTERRUPT, 'cb_io3'); ...
könntet ihr bitte in den PHP Bindings (ggf. auch in anderen wenn notwendig) das 3. Argument $userData einfügen? Generell denke ich mach es Sinn, dies bei allen registerCallBack einzufügen.
Alternativ wäre es hilfreich wenn der CallBack Aufruf die UID des Auslösenden Bricklets mitliefert. Andernfalls weis man zwar das A1 einen Interrupt ausgelöst hat, aber nicht von welchem Bricklet das ganze kommt.
Vielen Dank
Grüße
Martin
-
Hallo,
eventuell wäre es möglich einen Service einzurichten bei dem man CAD Pläne und/oder ähnliches abgeben kann um die Teile zu bekommen.
Müsste sich doch machen lassen bei irgend einem individual Lieferanten. Hat niemand einen Kontakt dazu? Wo fertig Tinkerforge die Gehäuse?
Ich hätte da auch hin und wieder Verwendung für.
Grüße
Martin
[PHP] IO16 Callback fehlt ein UserData Argument
in Software, Programmierung und externe Tools
Geschrieben
Hallo,
danke. Mit der tinkerforge_php_bindings_2_0_13_rc1.zip klappt der Callback auch mit UserData.
Grüße
Martin