Sto provando di giocare con Arduino Uno per capire come funziona, non ho nessuna formazione in elettronica o programmazione purtroppo.
Ho provato a fare un circuito in cui 3 pulsanti accendono ogni uno un colore diverso sul LED RGB, altrimenti dovrebbe rimanere spento.
Ma ottengo come risultato un LED acceso rosso e i pulsanti non fanno cambiare il colore... non capisco qual'è il problema? nel codice o nel cablaggio?
questo è il mio sketch
int switchstateblue=0;
int switchstategreen=0;
int switchstatered=0;
const int blueLEDPin=10;
const int greenLEDPin=9;
const int redLEDPin=11;
int blueValue=0;
int greenValue=0;
int redValue=0;
void setup(){
for(int pinNumber=2; pinNumber<5; pinNumber++){
pinMode(pinNumber, INPUT);
}
pinMode(blueLEDPin, OUTPUT);
pinMode(greenLEDPin, OUTPUT);
pinMode(redLEDPin, OUTPUT);
}
void loop(){
switchstateblue=digitalRead(blueValue);
delay(5);
switchstategreen=digitalRead(greenValue);
delay(5);
switchstatered=digitalRead(redValue);
delay(5);
if (switchstateblue==HIGH){
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
digitalWrite(9, LOW);
}else if (switchstategreen==HIGH) {
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(9, HIGH);
}else if (switchstatered==HIGH){
digitalWrite(10, LOW);
digitalWrite(11, HIGH);
digitalWrite(9, LOW);
}
}
Purtroppo non capisco cosa intendi, perché è sbagliato il collegamento dei pulsanti?
Scusami tanto sono un vero e proprio noob, ho guardato i schemi che mi hai indicato (grazie) purtroppo non capisco dove sbaglio?
Come avrai capito sicuramente sto seguendo i progetti dello starter kit, cercando di modificarli per riutilizzare cose appena imparate e applicarle in un'altro modo, sbagliare e imparare... ma non è semplice da solo!
Ciao, hai collegato il cavo che va da gnd nella solita fila del cavo che va al pin di arduino, questo fa si che il pulsante è come se non ci fosse, tutti e tre i pin di arduino sono costantemente a massa. Devi spostare i cavi che vanno da gnd al pulsante sull'altro piedino del pulsante o se ti torna meglio sposta i cavi che vanno ai pin di arduino sull'altro piedino del pulsante
Se guardi la scheda numero 1 in basso a sinistra c'e' come si deve collegare un pulsante (titolo pushbutton to 5V)
Ci va un resistenza tra GND e pushbutton. Poi prelevi il segnale tra resistenza e pushbutton.
Anche se i pulsanti fossero collegati correttamente... non funzionerebbe.
Non vedo un punto del programma in cui leggi lo stato dei pulsanti.
Vedo leggere solo tre volte lo stato del pin 0... i pulsanti dovrebbero essere sui pin 2 - 3 - 4
Yes, @Paulus dice bene.
Hai dichiarato 9 cose, 6 sono pin, 3 sono variabili per contenere le letture.
int switchstateblue=0;
int switchstategreen=0;
int switchstatered=0;
const int blueLEDPin=10;
const int greenLEDPin=9;
const int redLEDPin=11;
int blueValue=0;
int greenValue=0;
int redValue=0;
Perciò le ultime tre sono i pin di dove colleghi i pulsanti. Sarebbe meglio anche a loro dare un nome consono, blueValuePin ad esempio. Inoltre anche loro possono essere const ancora meglio const byte e non const int