Wysokość dźwięku z pokrętła
Część sekcji Wyjścia ścieżki Arduino w Coddy. Lekcja 12 z 24.
Pokrętło może uruchamiać brzęczyk jak instrument. Pomysł jest taki sam jak w przypadku ściemniacza: odczytaj pokrętło, przelicz odczyt i użyj go.
Tym razem zakresem docelowym jest częstotliwość. 200 Hz to niski pomruk, a 2000 Hz — wysoki gwizd, więc:
int reading = analogRead(A0);
int pitch = map(reading, 0, 1023, 200, 2000);
tone(8, pitch);map() nie wymaga, aby nowy zakres zaczynał się od 0: 0 staje się 200, 1023 staje się 2000, a środkowe położenie pokrętła daje wartość bliską 1100.
Ponowne wywołanie tone() z nową częstotliwością natychmiast zmienia dźwięk, więc jego wysokość zmienia się wraz z obracaniem pokrętła. Krótkie delay(10) zapobiega ponownemu uruchamianiu dźwięku przez szkic tysiące razy na sekundę.
Wyzwanie
ŁatwyPotencjometr jest podłączony do A0, a brzęczyk do pinu 8. Ustaw wysokość dźwięku za pomocą potencjometru:
- odczytaj wartość z potencjometru
- przekształć odczyt na częstotliwość od 200 do 2000 Hz za pomocą
map() - odtwórz dźwięk za pomocą
tone(), a następnie odczekaj 10 ms
Naciśnij Run i przekręć potencjometr, a następnie naciśnij Check.
Spróbuj swoich sił
const int knobPin = A0;
const int buzzerPin = 8;
void setup() {
}
void loop() {
// odczytaj wartość pokrętła, przeskaluj ją do zakresu 200..2000 Hz i odtwórz dźwięk
}
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Wyjścia
Poćwicz samodzielnie: Edytor online Arduino