Dwa przyciski jednocześnie
Część sekcji Wejścia ścieżki Arduino w Coddy. Lekcja 7 z 22.
Każdy przycisk ma własny pin i własne digitalRead(). Płytka odczytuje je jeden po drugim, ale tak szybko, że dla ciebie dzieje się to w tej samej chwili.
Maszyny fabryczne często mają dwa przyciski umieszczone daleko od siebie i działają tylko wtedy, gdy oba są wciśnięte. Obie ręce spoczywają na przyciskach, więc żadna z nich nie może znaleźć się blisko ostrza. Ta zasada to &&, z lekcji Łączenie warunków:
bool left = digitalRead(2) == LOW;
bool right = digitalRead(3) == LOW;
if (left && right) {
// oba przyciski są przytrzymane
}Oba piny muszą mieć ustawienie INPUT_PULLUP. Jeśli o jednym zapomnisz, ten pin będzie niepodłączony, co w tym przypadku daje odczyt LOW, tak jakby jego przycisk był zawsze wciśnięty.
Wyzwanie
ŁatwyPrzyciski są podłączone do pinów 2 i 3, oba do GND, a dioda LED do pinu 13. Włączaj diodę LED tylko wtedy, gdy oba przyciski są wciśnięte:
- ustaw piny 2 i 3 na
INPUT_PULLUP - odczytaj stan każdego przycisku do zmiennej
bool - włącz diodę LED, gdy oba przyciski są wciśnięte, w przeciwnym razie ją wyłącz
Naciśnij Run, przytrzymaj jeden przycisk, a następnie oba, po czym naciśnij Check.
Spróbuj swoich sił
const int leftPin = 2;
const int rightPin = 3;
const int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
// ustaw piny obu przycisków na INPUT_PULLUP
}
void loop() {
// odczytaj stan obu przycisków; zapal diodę LED tylko wtedy, gdy oba są wciśnięte
}
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Wejścia
Poćwicz samodzielnie: Edytor online Arduino