Bonjour,
Je rencontre un problème avec le TP7, avec le sensor l3g4200d (gyroscope) ; je galère depuis 2 jours.
La compilation échoue sur la fonction l3g4200d_init(&l3g4200d, &l3g4200d[0]);
L’erreur est “subscripted value is neither array nor pointer nor vector”, et ca concerne le second paramètre : &l3g4200d[0]
Après avoir vainement cherché d’ou provenait l’erreur, j’ai essayé de compiler le code de test, dispo à https://github.com/RIOT-OS/RIOT/blob/master/tests/driver_l3g4200d/main.c
J’ai toujours la même erreur à la compile …
Voici mon main.c :
#include <stdio.h>
#include "xtimer.h"
#include "l3g4200d.h"
#include "l3g4200d_params.h"
#define SLEEP_USEC (100 * 1000U)
int main(void)
{
l3g4200d_t dev;
l3g4200d_data_t acc_data;
puts("L3G4200 gyroscope driver test application\n");
puts("Initializing L3G4200 sensor");
if (l3g4200d_init(&dev, &l3g4200d_params[0]) == 0) {
puts("[OK]\n");
}
else {
puts("[Failed]");
return 1;
}
while (1) {
l3g4200d_read(&dev, &acc_data);
printf("Gyro data [dps] - X: %6i Y: %6i Z: %6i\n",
acc_data.acc_x, acc_data.acc_y, acc_data.acc_z);
xtimer_usleep(SLEEP_USEC);
}
return 0;
}
et mon Makefile :
APPLICATION = sensors
BOARD ?= iotlab-m3
USEMODULE += xtimer
USEMODULE += lps331ap
USEMODULE += lsm303dlhc
USEMODULE += isl29020
USEMODULE += l3g4200d
# Add the required modules here
RIOTBASE ?= $(CURDIR)/../../RIOT
include $(RIOTBASE)/Makefile.include
Je n’arrive pas à m’en sortir. Qui peut m’aider ?