Hola a todos.. este es mi primer mensaje en el foro y me veo obligado a escribir ya que estoy luchando con este problema hace meses y no lo puedo resolver. La cuestión es que tengo un proyecto demasiado largo y la idea es dividirlo en múltiples archivos pero sin usar clases.
Quiero tener un archivo que se llame "Globales.h" donde se guarden todas las constantes globales (estas constantes deberían ser accedidas desde cualquier parte del proyecto), por lo que le agregé los #ifndef y #endif correspondientes para que se fije si el archivo ya fué incluído. Pero parece que no funcionara.. ya probé varias formas, pero siempre me tira el error: "Multiple definition of"
Este es el archivo principal (principal.ino):
#include "Globales.h"
#include "Comunicacion.h"
void setup() {
}
void loop() {
}
void serialEvent() {
serialActivo = SERIAL_0;
serialInput(Serial);
}
Globales.h:
#ifndef _globales_h
#define _globales_h
enum SerialActivo {
NO_SERIAL,
SERIAL_0,
SERIAL_1,
SERIAL_2,
SERIAL_3
};
SerialActivo serialActivo;
#endif
Comunicacion.h:
void serialInput(HardwareSerial &port);
Comunicacion.cpp:
#include "Arduino.h"
#include "Globales.h"
void serialInput(HardwareSerial &port) {
if (port.available()) {
if (serialActivo == SERIAL_0) {
// InComando(port.read());
}
}
}
Si alguno ya pasó por este problema y sabe cual puede ser la solución me sería muy útil si me pueden dar una mano.. ya que estoy trabado con esto y no puedo avanzar con el proyecto.
Muchas gracias!
Saludos.