Compilazione condizionale di una libreria con #define nel file ".ino"

Dato che siete stati così precisi vi chiedo ancora una cosuccia.

Attualmente il file ".ino" è così:

// This example connects the Arduino to the ArduHAL on the PC
// With ArduHAL you can configure the Arduino board Pins
// as Digital-IN and Digital-OUT, Pwm, Servo, Adc or Generic.
// Then the in-out data are exchanged with the "Slots"
// and finally with the Theremino System applications.

#include <Theremino.h>

void setup() 
{  
   // ----------------------------------------------------------------
   // Calling setAsyncMode() the timer0 compare interrupt is used.
   // The ArduHAL exchange frequency is independent by the "loop()"
   // but the max frequency drops from about 300 to about 200 fps
   // ----------------------------------------------------------------
   //Theremino.setAsyncMode();

   // ----------------------------------------------------------------
   //  This baud rate must be the same as in the ArduHAL CommOptions
   //  Any baud rate from 1000 to 1000000 is valid
   //  More used baud rates are : 500000 250000 115200
   // ----------------------------------------------------------------
   Serial.begin(500000);  
   while(!Serial);
}

void loop() 
{  
}

La domanda è: potrei eliminare la riga "while(!Serial);" ?

Quella riga è li perché l'ho copiata da altri software, ma ci tengo a semplificare al massimo, per facilitare gli "artisti digitali" (come definiti da Maurotec nel messaggio precedente).

Se non usi una Leonardo/Due o non ti interessa aspettare che l'utente apra il monitor seriale all'avvio dello sketch, certo.

>theremino: ... ti ricordo che in conformità al regolamento, punto 7, devi editare il tuo post #20 (quindi NON scrivendo un nuovo post, ma utilizzando il bottone More -> Modify che si trova in basso a destra del tuo post) e racchiudere il codice all'interno dei tag CODE (... sono quelli che in edit inserisce il bottone con icona fatta così: </>, tutto a sinistra). Grazie.

Guglielmo

Grazie gpb01,
non mi ero accorto che esistesse quel tag, credevo si potesse utilizzare solo testo semplice.

Ora ho corretto il post e nei prossimi cercherò di utilizzare tutte le opzioni nel modo dovuto.

theremino:
Ora ho corretto il post e nei prossimi cercherò di utilizzare tutte le opzioni nel modo dovuto.

Guglielmo

Ciao a tutti,

a quanto pare la soluzione al problema di far vedere ad una libreria una DEFINE contenuta nel file .ino esiste ed e' quella usata da Paul Stoffregen nella sua libreria "Encoder"

Paul Stoffregen libreria Encoder su GitHub

In sostanza si tratta di mettere tutto il codice della libreria, invece che nel file .cpp, nel file .h e poi mettere le DEFINE che si desidera vengano viste dalla libreria, nel file .ino prima di fare l'include del file .h

Non e' il massimo dell'eleganza, pero' funziona ...

Ciao
Marco

Alla fine è stata una fortuna che non si potessero usare le define. Così siamo stati costretti a presentare le opzioni all'utente stesso e renderle modificabili a runtime. Abbiamo lavorato un po' di più, ma ora per gli utenti è molto più comodo.

Comunque grazie, è una informazione che potrebbe essere utile in futuro.

Guarda caso ne parlavamo proprio ieri...