FlyingDoc Posted March 1, 2013 at 01:04 PM Share Posted March 1, 2013 at 01:04 PM Ich stelle gerade mein C++Projekt auf 2.0 um. Da ich die Hardware mit der ipcon_enumerate Funktion abfrage um zu schauen was installiert ist, ist mir folgendes auf b.z.w. eingefallen. Ihr liefert im Callback cb_enumerate(const char *device_uid, const char *connected_uid,char position,uint8_t hardware_version[3],uint8_t firmware_version[3],uint16_t device_identifier,uint8_t enumeration_type,void *user_data) zurück. Mit dem rot markierten Teil kann man ja den Typ identifizieren. Ich habe aber noch keine Definition gefunden. Also hab ich mir die Mühe gemacht sie selber herauszufinden. Das habe ich dann benutzt um folgendes festzulegen. #define ID_IMU_BRICK 16 #define ID_MASTER_BRICK 13 #define ID_ANALOG_IN_BRICKLET 219 #define ID_ROTARY_POTI_BRICKLET 215 #define ID_TEMPERATURE_BRICKLET 216 #define ID_BAROMETER_BRICKLET 221 #define ID_IO16_BRICKLET 28 #define ID_GPS_BRICKLET 222 Damit lässt sich leicht der Typ identifizieren und entsprechend das Programm zu steuern. Bei mir sieht das als Beispiel folgendermaßen aus. void cb_enumerate(const char *device_uid, const char *connected_uid,char position,uint8_t hardware_version[3],uint8_t firmware_version[3],uint16_t device_identifier,uint8_t enumeration_type,void *user_data) { if(device_identifier==ID_MASTER_BRICK) { printf("MASTER_BRICK\n"); } if(device_identifier==ID_IMU_BRICK) { printf("IMU gefunden\n"); } } Wenn ihr diese Definitionen gleich im ip_connections mit unterbringt, erleichter sich vieles damit. Quote Link to comment Share on other sites More sharing options...
photron Posted March 1, 2013 at 01:17 PM Share Posted March 1, 2013 at 01:17 PM Diese Defines gibt es schon, es fehlt aber wohl noch deren Dokumentation. Zum Beispiel #define AMBIENT_LIGHT_DEVICE_IDENTIFIER 21 in bricklet_ambient_light.h. Quote Link to comment Share on other sites More sharing options...
FlyingDoc Posted March 1, 2013 at 01:28 PM Author Share Posted March 1, 2013 at 01:28 PM Ah. Grad beim IMU gefunden. Ist aber ziehmlich versteckt das ganze. Quote Link to comment Share on other sites More sharing options...
photron Posted March 5, 2013 at 06:00 PM Share Posted March 5, 2013 at 06:00 PM Ist jetzt auch dokumentiert. Jeder Brick und Bricklet hat jetzt in der API Dokumentation einen Abschnitt über Konstanten. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.