Menu
CoddyTech

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ę.

challenge icon

Wyzwanie

Łatwy

Potencjometr 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
}
quiz iconSprawdź się

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