Ciao, ho un Arduino Uno e sto facendo un progetto in modo che un led si accende tramite due battiti di mano e per questo uso un sensore suono/voce. Ho visto in giro per la programmazione e ho trovato uno sketch che funziona alla perfezione solo che ovviamente lo voglio capire per far in modo che poi in futuro lo possa modificare e ci sono delle funzione che non riesco a capire e che cercando su internet non ho trovato nulla. Le funzioni sono le seguenti (ovviamente tutte le parole come toggleOutput o TOTAL_CLAPS_TO_DETECT sono variabili dichiarate all'inizio):
-int detectClaps(int numClaps);
di questo non riesco a capire il perché dopo aver dichiarato una variabile apro una parentesi e scrivo dentro un'altra variabile;
-int buffer[3];
di questo non riesco a capire cos'è il buffer. Cercando su internet ho capito che dentro questo buffer ci sono dei valori ma non ho capito bene a cosa serve. Al posto di scrivere buffer non potrei dichiarare semplicemente una variabile?;
-int clapState = detectClaps(TOTAL_CLAPS_TO_DETECT);
qui non riesco sempre a capire il perché mette quella variabile (dichiarata all'inizio) tra parentesi;
-toggleOutput = -1;
qui, invece, non riesco a capire cosa significa il "";
- loopIteration = (loopIteration+1)%SIZE;
qui non riesco a capire a cosa serve la "%";
-poi non riesco a capire la funzione "return" come ad esempio qui:
return SensorValue; - e infine come ultima cosa non riesco a capire la differenza tra "const int" e "int";
Queste sono le funzioni di Arduino che non riesco a comprendere e se c'è qualcuno che me le spieghi bene e dettagliatamente lo ringrazierei.
Poi c'è un'ultima cosa. Il mio sensore suono/voce dispone di 4 pin di cui due servono per 5V e GND, un altro per il segnale A0 e l'ultimo (di cui nel mio progetto non ho utilizzato) chiamato DO. Chi mi sa dire a cosa serve quest'ultimo pin? Grazie in anticipo per coloro che mi sapranno rispondere a queste domande.