Menu
CoddyTech

Tinggi Nada dari Knob

Termasuk bagian Output dalam perjalanan Arduino di Coddy. Pelajaran 12 dari 24.

Kenop dapat memainkan buzzer seperti alat musik. Idenya sama seperti dimmer: baca kenop, konversi pembacaannya, lalu gunakan hasilnya.

Kali ini rentang targetnya adalah frekuensi. 200 Hz menghasilkan dengungan rendah dan 2000 Hz menghasilkan siulan tinggi, jadi:

int reading = analogRead(A0);
int pitch = map(reading, 0, 1023, 200, 2000);
tone(8, pitch);

map() tidak perlu memulai rentang baru dari 0: 0 menjadi 200, 1023 menjadi 2000, dan posisi tengah kenop menghasilkan nilai sekitar 1100.

Memanggil tone() lagi dengan frekuensi baru langsung mengubah nadanya, sehingga tinggi nada mengikuti kenop saat kamu memutarnya. delay(10) yang singkat mencegah program memulai ulang nada ribuan kali per detik.

challenge icon

Tantangan

Mudah

Knob terhubung ke A0 dan buzzer ke pin 8. Atur pitch dengan knob:

  • baca knob
  • ubah pembacaan menjadi frekuensi dari 200 hingga 2000 Hz dengan map()
  • putar bunyinya dengan tone(), lalu tunggu 10 ms

Tekan Run dan putar knob, lalu tekan Check.

Coba sendiri

const int knobPin = A0;
const int buzzerPin = 8;

void setup() {
}

void loop() {
  // baca nilai kenop, petakan ke 200..2000 Hz, lalu bunyikan
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Output

Latihan sendiri: Playground Arduino