CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS

Sujet : Arduino Uno et accéléromètre - Quelques questions...

DébutPage précedente
123
Page suivantePage suivante
-Riguel- -Riguel-
MP
Niveau 46
22 mai 2016 à 02:49:11

J'ai corrigé ça mais apparemment aucune correspondance avec la fonction
MMA7660::getAcclemeter(float *ax,float *ay,float *az)

LoloBzh56 LoloBzh56
MP
Niveau 10
22 mai 2016 à 08:04:37

Fais voir ton code

-Riguel- -Riguel-
MP
Niveau 46
22 mai 2016 à 14:14:29

Le voici :


#include <Wire.h>
#include "MMA7660.h"
MMA7660 acc;
void setup()
{
    acc.init();
    pinMode(13, OUTPUT);
    Serial.begin(115200);
}

void loop()
{

    static long cnt     = 0;
    static long cntout  = 0;
    float ax,ay,az;
    int8_t x, y, z;

    acc.getXYZ(&x,&y,&z);

    Serial.print("x = ");
    Serial.println(x);
    Serial.print("y = ");
    Serial.println(y);
    Serial.print("z = ");
    Serial.println(z);


    if(acc.getAcclemeter(float *ax,float *ay,float *az))
    {
        Serial.print("get data ok: ");
    }
    else
    {
        Serial.print("tiem out: ");
    }
    
    Serial.println("accleration of X/Y/Z: ");
    Serial.print(ax);
    Serial.println(" g");
    Serial.print(ay);
    Serial.println(" g");
    Serial.print(az);
    Serial.println(" g");
    Serial.println();
    delay(50);

}
-Riguel- -Riguel-
MP
Niveau 46
22 mai 2016 à 14:15:35

J'ai essayé de mettre aussi
if(acc.getAcclemeter(ax,ay,az))

ou

if(acc.getAcclemeter(&ax,&ay,&az))
-Riguel- -Riguel-
MP
Niveau 46
22 mai 2016 à 15:27:25

J'ai modifié et ça compile effectivement le programme, maintenant comment le lancer ? Je veux dire, il est téléversé (je pense qu'il fonctionne) mais comment le lancer et avoir les valeurs d'accélération affichées à l'écran ?

-Riguel- -Riguel-
MP
Niveau 46
22 mai 2016 à 15:34:57

Le téléversement se fait, ça écrit "Téléversement terminé" mais dans l'historique des erreurs ça met "Bibliothèque non valide dans C:\ etc"

LoloBzh56 LoloBzh56
MP
Niveau 10
22 mai 2016 à 18:50:11

Hello, la je suis via mobile donc ça va être chaud.

Alors déjà pour ton code, la bonne manière d'écrire est bien:

acc.getAcclemeter(&ax,&ay,&az)

Si tu veux savoir pourquoi il faut mettre le "&" renseigne toi sur l'utilisation des pointeurs (genre sur openclassroom).

Ensuite ton if ici est inutile, car la méthode "getAccelemeter" ne retourne rien (void). Donc en fait, Tu testes toujours un void.

Si tu as bien fais le câblage , ici ça devrait fonctionner tu devrais pouvoir afficher les différents axes comme tu le fais.

Pour info une fois le televersement effectué, le code est "sauvegardé" sur la carte arduino et à chaque fois que tu l'allume c'est toujours le même code qui est exécuté (jusqu'au prochain televersement bien sûr).

Pour afficher les valeurs à l'écran, normalement il y a une console permettant de simuler un port série sur l'IDE. Donc t'as juste à indiquer le bon baudrate (dans ton cas 115200) Et tu devrais voir les valeurs affichées.

Pour le message d'erreur concernant la librairie, Je ne sais pas. Regarde sur Google en tapant le texte de l'erreur.

-Riguel- -Riguel-
MP
Niveau 46
22 mai 2016 à 21:12:45

Ok merci de ton aide, j'essaierai ce que tu m'as dit.

Cependant je n'ai pas de console moi. :(

LoloBzh56 LoloBzh56
MP
Niveau 10
23 mai 2016 à 08:46:42

Pour la console, c'est le bouton en haut à droite. Clique dessus après avoir connecté ton arduino à ton ordinateur:

https://www.noelshack.com/2016-21-1463985858-moniteurserie.png

Pour ce qui est du code, je viens de voir qu'un exemple existait sur le site:

https://github.com/Seeed-Studio/Accelerometer_MMA7660/blob/master/examples/MMA7660FC_Demo/MMA7660FC_Demo.ino

C'est marrant qu'ils utilisent directement "getXYZ". Mais bon, tu peux tester. L'autre fonction fait la même chose mais je ne sais pas pourquoi divise le résultat par 21.

-Riguel- -Riguel-
MP
Niveau 46
26 mai 2016 à 13:05:19

Je testerai merci.

Je n'ai pas d'ordi actuellement.

-Riguel- -Riguel-
MP
Niveau 46
30 mai 2016 à 22:25:01

Up

-Riguel- -Riguel-
MP
Niveau 46
31 mai 2016 à 12:34:29

Auriez-vous des idées pour une calibration et un étalonnage ?

-Riguel- -Riguel-
MP
Niveau 46
01 juin 2016 à 00:08:36

Personne ?

-Riguel- -Riguel-
MP
Niveau 46
01 juin 2016 à 20:22:29

C'est bon ça fonctionne :bave:

Maintenant reste plus qu'à calibrer et étalonner, quelqu'un aurait des idées ?

Des conseils ou un truc comme ça. Pour la calibration il faut un autre prograe je suppose ?

-Riguel- -Riguel-
MP
Niveau 46
02 juin 2016 à 22:45:07

Personne ?

-Riguel- -Riguel-
MP
Niveau 46
05 juin 2016 à 02:19:52

Up

-Riguel- -Riguel-
MP
Niveau 46
05 juin 2016 à 21:08:21

:-(

FreddyCouscous FreddyCouscous
MP
Niveau 10
06 juin 2016 à 11:49:49

Je pense que l'étalonnage est déjà fait.

Après si tu veux changer la précision etc, tu peux toujours lire la datasheet et voir quelles valeurs il faut envoyer pour configurer autrement l'accéléromètre.

http://garden.seeedstudio.com/images/e/ee/MMA7660FC.pdf

DébutPage précedente
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : godrik, LGV
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

La vidéo du moment