Ushbu model uchun quyidagi dastur yozamiz:
int p = 3; //
biz pin raqami bo‘lgan o‘zgaruvchini e'lon qilamiz
void setup() // setup protsedurasi
{
pinMode(p, OUTPUT); //pinni chiqishini e’lon qilish
}
void loop() // loop protsedurasi
{
tone (p, 500); // 500 Гц ni yoqamiz
delay(100); // 100 Мс kutamiz
tone(p, 1000); // 1000 Гц ni yoqamiz
delay(100); // 100 Мс kutamiz
}
Arduinoga o‘
rnatilgan tugmachani LED bilan shunday ko‘
rinishga ega:
Qurilmaning to‘g‘ri ishlashi uchun PIN raqamini o‘rnatish, uni "chiqish" deb
belgilash kerak. AnalogWrite funktsiyasi pin raqamini
va darajasini argument
sifatida qabul qiladi, bu uning qiymatini 0 dan 255 gacha o‘zgartiradi. Buning sababi
shundaki, Arduino PWM pinlarida 8 bitli DAC (raqamli-analogli konvertor)
mavjud. Ushbu parametrni o‘zgartirib, foydalanuvchi
ovoz balandligini ozgina
o‘zgartiradi. To‘liq o‘chirish uchun portdagi "0" qiymatini singdiring.
Aytish
kerakki, "analogwrite" funktsiyasidan foydalanib, foydalanuvchi ovoz tugmachasini
o‘zgartira olmaydi. Piezo emitentga 980 Gts chastotasi beriladi. Bu qiymat Arduino
va analog platalardagi PWM pinlarining chastotasiga to‘g‘ri keladi.
Buzzer musiqa namunalari
Ishni yangi loyiha bilan diversifikatsiya qilish, unga "ko‘ngilochar" elementni
qo‘shish uchun foydalanuvchilar ma'lum chastotalar to‘plamini o‘rnatish g‘oyasini
ilgari surishdi, bu esa uni qo‘shiqlar va filmlarning mashhur kompozitsiyalari bilan
uyg‘unlashtirdi. Internetda bunday kuylar uchun turli xil eskizlarni topish mumkin.
Keling, afsonaviy Nokia uyali telefonlaridan "nokia tune"
ning eng taniqli
treklaridan biriga pyezo kuyini misol qilib keltiraylik.
Rasmiy saytda
https://www.arduino.cc/en/Tutorial/BuiltInExamples/toneMelodyda
ko‘rsatilganidek, nusxalarini nusxalash orqali pitches.h faylini o‘zingiz qilishingiz
mumkin.
O‘zingizning
ohanglaringizni yozayotganda,
notalarning chastotalari va
standart musiqiy notada ishlatiladigan intervallarning davomiyligini
bilish foydali
bo‘ladi.