j'ai un soucis avec le capteur GP2Y0E02B de Sharp. j'arrive bien à lire la distance mesurée mais je n'arrive pas à changement son adresse I2C. j'ai suivi la note d'application :
quand je dis que ça ne fonctionne pas, c'est que quoi que je fasse, le capteur répond toujours à l'adresse de base 0x80 et à la relecture (partie 9) je lis 0x30 et je ne sais pas quoi penser de cette valeur.
J'ai regardé le code pour modifier l'adresse. Sans être rentré dans les détails, j'ai remarqué que tu met des délais entre plusieurs séries de "Wire.write".
Le problème c'est que l'écriture réelle sur le port ne se fait que sur "Wire.endTransmission()".
L'instruction "Wire.write" écrit les données dans un buffer (32 octets si ma mémoire est bonne) et c'est "Wire.endTransmission" qui l'envoi sur le port I2C.
Je te conseille d'insérer un "Wire.endTransmission" avant chaque délai.
bilbo83, merci des conseils, je comprends mieux comment ça marche maintenant mais j'ai résolu le problème avant de lire ton message.
En fait il fallait alimenter une pin (Vpp) au bon moment pendant la programmation du fusible, il ne faut donc pas uniquement suivre la procédure au niveau de l'I2C mais il faut aussi aller souder un fil sur le capteur et le mettre à 3.3V au bon moment pour que ça marche. j'ai modifier mon code pour attendre une entrée utilisateur au moment où il faut mettre la pin à 3.3V et au moment où il faut l'enlever et c'est bon.
la datasheet en parle mais c'est pas vraiment très détaillé, de même pour la procédure, il faut aller chercher les infos pour savoir pourquoi on met tel registre à telle valeur. A part le changement d'adresse I2C qui était laborieux pour moi (ça fait 2 jours que j'étais dessus), ce capteur est vraiment génial, le meilleur que je connaisse pour le moment en mesure de distance.
Hi,
I am trying to change the address of one of my GP2Y0E02B.
I tried the code here on the topic, but I'm still having issue and receiving ERREUR every time.
I put a stop before Stage 6 so that I can ground the Vpp pin and press a button to continue the execution, the issue is that - doing so - the execution stops after Stage 8 and it continues only if I put Vpp again to 3.3V but it always ends with ERREUR.
Do you think you can help me with a more precise version of that sketch?
Bonjour Lanix
J'ai à reprogrammer les adresses de sharp gp2y0e02b aussi mais seulement la doc sharp sur laquelle je campe depuis le nouvel an...
Si tu pouvais me donner un coup de main avec du code qui marche ça serait inespéré, je patauge.
Ces trucs sont extra minuscules c'est super d'apprendre qu'ils fonctionnent bien: gain de place énorme pour mini sumo.
Merci d'avance.
EN:
Hi, if you wanna change the i2c slave address, please, read the page 37 of the datasheet. In that page, they mention a Vpp pin, this pin is on the back side of the sensor, so you have to connect it to change the i2c address. This pin must be configured as a digital output with a 3V3. Page 27 shows where is the Vpp pin depending of your sensor. Don't forget what the addresses are available ( 0x00, 0x01, 0x02, 0x03..... table 21 - page 32). Don't worry if you get an error at the step 9, it is possible that the i2c address has changed. *Sorry for my english.
FR:
Salut, si vous voulez changer l'addresse I2c de votre dispositif, s'il vous plaît, il est essentiel de lire la page 37 du Datasheet. Dans cette page se trouve la procedure complete afin de changer l'addresse et la pin Vpp est aussi mentionée. Vous devez souder un fil dans cette pin et le mettre à 3V3 dans le moment précis (selon la procédure de la page 37). La page 27 montre où se trouve cette pin selon votre dispositif. N'oubliez pas que les addresses disponibles sont 0x00, 0x01, 0x02, 0x03...0x0f (table 21 - page 32). Si vous obtenez une erreur dans le pas 9, ne vous inquietez pas, il est possible que l'addresse ait changé. *Désolé pour mon francais