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.
Sfida
FacileI 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
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Ingressi
1Pulsanti
Stampa lo stato di un pulsanteResistenza pull-downPull-up internoAlterna a ogni pressioneConta le pressioni del pulsanteElimina il rimbalzo di un pulsanteDue pulsanti contemporaneamenteEsercitati da solo: Playground Arduino