Menu
CoddyTech

Due pulsanti contemporaneamente

Fa parte della sezione Ingressi del percorso Arduino di Coddy. Lezione 7 di 22.

Ogni pulsante ha il proprio pin e la propria digitalRead(). La scheda li legge uno dopo l’altro, ma così velocemente che per te è come se fosse nello stesso momento.

Le macchine industriali spesso hanno due pulsanti molto distanti tra loro e funzionano solo mentre entrambi sono premuti. Entrambe le mani sono sui pulsanti, quindi nessuna può trovarsi vicino alla lama. Questa regola è &&, da Combinare condizioni:

bool left = digitalRead(2) == LOW;
bool right = digitalRead(3) == LOW;

if (left && right) {
  // entrambi i pulsanti sono premuti
}

Entrambi i pin devono avere INPUT_PULLUP. Dimenticane uno e quel pin rimane flottante, il che qui viene letto come LOW, come se il suo pulsante fosse sempre premuto.

challenge icon

Sfida

Facile

I pulsanti sono sui pin 2 e 3, entrambi collegati a GND, e il LED è sul pin 13. Accendi il LED solo mentre entrambi i pulsanti sono premuti:

  • imposta i pin 2 e 3 su INPUT_PULLUP
  • leggi ciascun pulsante in una bool
  • accendi il LED quando entrambi sono premuti, altrimenti spegnilo

Premi Run, tieni premuto un pulsante, poi entrambi, quindi premi Check.

Provalo tu

const int leftPin = 2;
const int rightPin = 3;
const int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
  // imposta entrambi i pin dei pulsanti su INPUT_PULLUP
}

void loop() {
  // leggi entrambi i pulsanti, accendi il LED solo mentre sono premuti entrambi
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Ingressi

Esercitati da solo: Playground Arduino