Lier plusieurs pages de code

Bonjour à tous
voila je me lance dans le code arduino mais j'ai du mal avec l'ide, j'aimerais savoir comment faire des fichiers en .h et .cpp tout en utilisant des bibliothèques arduino dans ces fichiers et pouvoir les lier à un main.cpp.

Je suis surement pas très clair dans mon explication du coups hésitez pas à me demander des infos sups.

Merci d'avance

Talios

Salut,

Pas hyper clair en effet xD

setup() et loop() sont dans main(), donc en soit c'est la même chose.

Ensuite pour les .h et .cpp y'a aucun problème. Suffit d'inclure les librairies qui t'interessent dans celle que tu écris avant de l'inclure elle même dans le code que tu rédiges sous l'IDE

Ok ... heu en fait la page .ino peut être vide ?
Mon loop et setup peuvent se trouver dans ma page main.cpp ?
pour utiliser les librairies et la syntaxe arduino ne fait t-il pas faire un #include "Arduino.h" ?

Oui ton ino peut-être vide. C'est le cas de GRBL pour les CNC par exemple, le ino ne contient que :

#include GRBL.h

setup() et loop() sont dans la lib ensuite

Par contre pas de main, tout ce que tu écriras dans setup et loop est déjà dans main :

https://github.com/arduino/Arduino/blob/master/hardware/arduino/avr/cores/arduino/main.cpp

je suis vraiment au début du code tous arduino dons j'ai encore du mal avec le jargon GRBL e CNC par exemple.

pour faire plus claire j'ai ca comme code

Code.ino

// vide

main.h

#include "main.cpp"
#include "Arduino.h"
//exemple de fonction

public void INITIALISATION();
public float TENSION();
public int TENSIONSHEK();

main.cpp

#include <Servo.h>
#include "Arduino.h"
#include "main.h"
#include "distance.h"
//du code

void setup(){
if (DISTANCEOK()==true){
//du code
}
}
void loop(){
//du code
}

distance.h

#include "distance.cpp"
#include "Arduino.h"


bool DISTANCEOK();

distance.cpp

#include <Ultrasonic.h>
#include "Arduino.h"

Ultrasonic monCapteur(3,2);   //port pwm
int maDistance = 0;

 
bool DISTANCEOK(){
//du code
}

mais je pense pas que la solution soit la bonne

Je me répète : main() est déjà inclus. je t'ai donné le lien qui est le fichier inclus dans le core arduino.

Tape GRBL tu tombera sur le github et t'auras un exemple

Bonjour,
Dans un autre topic du forum : Utilisation de grbl dans l'IDE Arduino