[Risolto] sketch su più schede

salve a tutti,

qualche giorno fa ho acquistato il mio primo arduino e ci sto smanettando a più non posso per imparare ad usarlo al meglio. al momento non ho un progetto specifico, sto semplicemente cercando di capire come funziona e facendo qualche prova.
da buon newbie quindi, vengo alla prima domanda stupida :slight_smile:

nell' IDE vedo che, per ogni progetto, c'è la possibilità di aggiungere più schede (freccia in basso sotto al pulsante del monitor seriale).
qual'è l'utilita delle schede? se scrivo il codice su più schede fanno comunque parte dello stesso skecth? vengono eseguite in sequenza o in contemporanea? come le utilizzate voi?

nele scede puoi metterci delle funzioni, in tal caso saranno "appese" al codice della scheda principale, se non erro.
Personalmente preferisco usarle per creare delle classi, ovvero quelle che vengono erroneamente chiamate librerie. In questo modo posso riutilizzare il codice in altri progetti semplicemente pspostando le schede (ogni scheda è un file su disco) nella libraries, come faresti per una libreria scaricata da internet

Quando lanci il upload il codice di tutte le schede viene unito e compilato e trasferito nel Arduino. L' utilitá di distribuire lo sketch in piú schede é puramente organizzativo per tenere ordine.
Ciao Uwe

Quoto Uwe.
E' solo una questione organizzativa. Personalmente divido il codice in schede solo se il programma è molto lungo e ritrovare delle funzioni in un megasketch sarebbe più complicato per cui divido le funzioni simili in gruppi (ogni gruppo una scheda). Ogni scheda crea un file nuovo nella cartella dello sketch

Su sketch medio-piccoli tengo tutto unito.

ok, immaginavo che si trattasse solo di una "facilitazione organizzativa".
un ultimo chiarimento:
le schede vanno comunque scritte in ordine sequenziale o se ne occupa il compilatore di prendere le varie parti di codice e concatenarle nel migliore dei modi?
tanto per capirci, posso ad esempio mettere nell'ultima scheda le funzioni o la dichiarazione delle variabili e nella prima scheda il codice che le utilizza?

puoi fare come vuoi, al compilatore non fa alcuna differenza. puoi anche dividere loop() e setup() su diverswe schede mi sa

Il o i file che compongono lo sketch, in fase di compilazione, vengono riuniti tutti in un unico file e poi inseriti in un sorgente più grosso. L'ordine non ha importanza, l'IDE le tiene in ordine alfabetico ma non cambia nulla.
Solo, se devi usare dichiarazioni di variabili globali o inclusione di librerie, queste falle nel file principale (quello che ha per nome nome_progetto.ino).

vi ringrazio ragazzi, ora è chiaro.

lesto:
puoi anche dividere loop() e setup() su diverswe schede mi sa

questo credo di no, ho provato e mi da un errore del tipo "redefined loop" o qualcosa di simile.... :slight_smile:

Giustamente, perché il file principale è appunto quello .ino che ha lo stesso nome della cartella in cui è ospitato, ed è il file di riferimento per l'IDE.