Aller au contenu

Messages recommandés

Posté(e)

j'essaye de passer une variable dans différents onglets mais j'ai en retour toujours un message d'erreur

si je tente avec #define ma variable deviens constante (normal) dans configuration.h et ensuite dans les différents onglets cela fonctionne,mais je ne souhaite pas utiliser une constante mais une variable.

je suis sous arduino 1.06 avec un marlin pour discovery200

merci de votre aide

Posté(e)

Par exemple :

int maVariable // déclaration d'une variable de type integer.

Donc maintenant si tu déclare cette variable dans par exemple un fichier : fic_mes_variables.h

et que dans un autre fichier tu fait : #include "fic_mes_variables.h"

Alors maVariable peut être manipulée depuis le fichier contenant cet #include. Toutefois si ta variable n'est utilisée que depuis un seul et même lieu il serait mieu de ne la déclarer que depuis cet endroit (soit en local à une fonction soit en global et donc manipulable depuis toutes les fonctions contenus).

Mais que veux tu faire plus exactement ?

Posté(e)

Je vais essayé cela

mon but est d'afficher le numéro de la couche en cours.

j'ai préparé la mise en place sur l'afficheur mais je n'arrivais á passer la variable á la gestion de l'afficheur.

Posté(e)

Je lis les variations de l'axe Z.

mais dans un premier temps je vais essayer de comprendre ton # include àvec la déclaration du fichier.h mais il faut aussi un fichier .cpp

Posté(e)

Non pas besoin de .cpp car la tu ne fait qu'une déclaration. Le .cpp est utile si tu fait par exemple une fonction ou autre. 

Donc soit tu déclare ta variable dans un fichier commun soit tu fait un nouveau fichier .h. 

Je sais pas si je me fait comprendre ?

Posté(e)

Après relecture :

en fait y-a plusieurs moyen de rendre une déclaration global ou local. 

Par exemple à l'intérieur d'un d'une fonction la variable sera local à la fonction. 

En en haut d'un fichier .ino elle sera global (utilisable par toutes les fonctions de ce fichier).

via un include, elle sera global à tous fichier disposant de cet include. 

Je suis avec mon iphone je ne peux donner d'exemple, mais dit moi si je me fait comprendre. 

Posté(e)

J'ai mis ma variable dans marlin.h ,elle est reconnue dans l'onglet  Marlin_main.cpp mais pas dans l'onglet dogm_lcd_implementaion.h,alors que les deux ont #include "Marlin.h"

je ne comprend pas pourquoi?

Posté(e) (modifié)

j'ai pas votre dagoma, tu peux svp poster ton source code ?

Je suppose que didi est ta déclaration ? Cette ftostr32sp() viens d'où ? C'est pas un float à passé en paramètre ?

Modifié (le) par nicephore
Posté(e)

oui didi est ma variable pour le moment (plus facile à trouver)

je me suis inspirer des lignes au-dessus mais j'ai essayé sans cela mais même résultat

mon code source  total fait 7.04 Mo compacté ou tu en veux qu'une partie ?

Posté(e)

7Mo c'est pas si mal :)

Donne moi les fichiers important (le fichier ou tu déclare ta variable et ceux qui l'appels via include et autre)en fonction de ce que tu veux faire et la fonction ftostr32sp() car d'après son nom elle doit certainement transformer un float en string (pour l'affichage) hors un layer est un entier et nom pas une virgule flottante, ne epux tu pas directement ta variable dans le fichier de gestion de l'affichage ?

Posté(e)

quand je retire extern j'ai beaucoup de message d'erreur

  This report would have more information with
  "Show verbose output during compilation"
  enabled in File > Preferences.
Arduino: 1.0.6 (Windows NT (unknown)), Board: "Melzi 1284p 16mhz"
buzzer.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
cardreader.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
configuration_store.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
digipot_mcp4451.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
M100_Free_Mem_Chk.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
Marlin.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
MarlinSerial.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
Marlin_main.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
mesh_bed_leveling.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
planner.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
qr_solve.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
Sd2Card.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
SdBaseFile.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
SdFatUtil.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
SdFile.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
SdVolume.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
servo.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
stepper.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
stepper_indirection.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
temperature.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
ultralcd.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
vector_3.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
watchdog.cpp.o:(.bss.didi+0x0): multiple definition of `didi'
blinkm.cpp.o:(.bss.didi+0x0): first defined here
collect2.exe: error: ld returned 1 exit status

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
  • Sur cette page :   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
  • YouTube / Les Imprimantes 3D .fr

×
×
  • Créer...