Menu
CoddyTech

Melodi dari Dua Array

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

Not dalam sebuah melodi tidak semuanya memiliki durasi yang sama. Array kedua dapat menyimpan durasinya, diselaraskan dengan not: notes[i] dan durations[i] saling berkaitan.

int notes[] = {262, 262, 392, 392, 440, 440, 392};
int durations[] = {400, 400, 400, 400, 400, 400, 800};

Dua not yang sama secara berurutan akan terdengar menyatu menjadi satu not panjang. Jeda singkat setelah setiap not membuatnya tetap terpisah, jadi bunyikan not selama durasinya, lalu tunggu sedikit lebih lama:

tone(8, notes[i], durations[i]);
delay(durations[i] + 50);

Durasi menghentikan not, dan tambahan 50 ms menjadi jeda sebelum not berikutnya.

Saat indeks melewati not terakhir, melodi selesai: tunggu sebentar sebelum memulainya lagi agar melodi tidak bertumpuk dengan dirinya sendiri.

challenge icon

Tantangan

Sedang

Mainkan baris pertama Twinkle Twinkle Little Star pada pin 8:

  • nada: 262, 262, 392, 392, 440, 440, 392
  • durasi: masing-masing 400 ms, dan 800 ms untuk nada terakhir
  • setelah setiap nada, tunggu selama durasinya ditambah 50 ms
  • setelah nada terakhir, tunggu satu detik lagi lalu mulai kembali

Tekan Jalankan, lalu Periksa.

Coba sendiri

const int buzzerPin = 8;
// buat array notes dan durations, serta indeksnya, di sini

void setup() {
}

void loop() {
  // mainkan satu nada, tunggu selama durasinya ditambah 50 ms, lalu lanjut ke nada berikutnya
  // setelah nada terakhir, tunggu satu detik lalu mulai lagi
}
quiz iconUji dirimu

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

Semua pelajaran di Output

Latihan sendiri: Playground Arduino