Plusieurs fichiers

Oulà je pensais pas que c'était si grave :astonished: :blush:

Oui je voulais juste découper le code pour la lisibilité. Tu dis faire plusieurs .ino
Ca veut dire que je peux mettre des fonctions dans un autre .ino sans setup et sans loop, juste des fonctions ?
Et si je fais comme ça me conseille tu de garder les header pour les structures et les prototypes où de tout mettre dans les .ino
Sinon tu dis que les commentaires sont gérés de manière tordu donc le fait de mettre des //**********
peut provoquer des disfonctionnements ?
Merci pour toutes tes indications :slight_smile:

Dans l'IDE tu peux ouvrir des onglets.
Pour nommer l'onglet il suffit d'indiquer un nom SANS l'extention .ino -> c'est l'IDE qui la mettra automatiquement.
L'IDE range les fichiers de la manière suivante : en premier le fichier créé au début du projet puis les onglets classés en ordre alphabétique.
A la compilation l'IDE concatène tous les onglets dans l'ordre où ils apparaissent c'est à dire dans l'ordre alphabétique.
Celà peut poser des problème si le fichier dans lequel tu as fait des déclarations de variables est concaténé à la fin.
Une astuce pour contourner ce mode de fonctionnement : préfacer les nom des onglets par une lettre :
A_declarations
B_fonctions
ainsi c'est toi qui maîtrise l'ordre.

Le nom du fichier *.hex sera celui du projet.

Merci à tout les deux, je vais restructurer un peu tout ça alors.
Dernières questions:
Une variable globale est elle accessible de tout les onglets sans mettre extern ?
Et pour les includes si je comprends bien je les mets que dans un onglet !?

Une variable globale est elle accessible de tout les onglets sans mettre extern ?
Et pour les includes si je comprends bien je les mets que dans un onglet !?

Oui à tout : l'IDE concatène c'est à dire ajoute tous les fichiers des onglets les après les autres dans le fichier de base, celui que tu as créé avec le projet : -> Fichier -> nouveau -> enregistrer sous

Les onglets c'est juste une question de présentation, c'est un outil qui a pour but d'aider à la conception du programme parce que c'est plus facile de gérer 5 fichiers de 200 lignes qu'un seul de 1000 lignes.
Mais au final pour le compilateur c'est comme s'il n'existait qu'un seul et unique fichier.

Pour forcer le trait il est possible de s'organiser ainsi :
exemple.ino -> Fichier -> nouveau -> enregistrer sous
A_Documentation -> commentaires (Que fait le programme, sa licence , signification des variables etc )
B_Declaration -> les includes et les variables globales
C_setup -> la fonction setup
D_loop -> la fonction loop
E_autres_fonctions_1 appelées soit par setup() soit par loop()
F_autres_fonctions_2 appelées soit par setup() soit par loop()
G_autres_fonctions_2 appelées soit par setup() soit par loop()

C'est exagéré mais c'est pour bien comprendre comment fonctionne l'IDE : les fichiers sont concaténés dans l'ordre alphabétique. Il faut absolument que les includes et les variables globales soient définis avant le reste et que setup() qui ne s'exécute qu'une seule fois soit défini avant loop() qui est la boucle infinie.

Un grand grand merci XD