Arduinodan istifadə edərək müxtəlif yollarla səslər yarada bilərsiniz. Bunlardan ən sadəi piezo emitentini (və ya piezo səsləndiricisini) lövhəyə bağlamaqdır. Ancaq həmişə olduğu kimi burada da bəzi nüanslar var. Ümumiyyətlə, bunu anlayaq.
Zəruri
- - Kompüter;
- - Arduino;
- - piezo yayan (piezo zil səsi).
Təlimat
Addım 1
Piezo emitenti və ya piezoelektrik emitenti və ya piezo zil, tərs piezoelektrik effektdən istifadə edən elektro-akustik səs çoxaldıcı cihazdır. Sadə bir şəkildə izah etmək üçün - bir elektrik sahəsinin təsiri altında, membranın mexaniki bir hərəkəti yaranır, bu da eşitdiyimiz səs dalğalarına səbəb olur. Tipik olaraq, bu cür səs yayıcıları səs siqnalları kimi ev elektron avadanlıqlarında, masaüstündə fərdi kompüterlərdə, telefonlarda, oyuncaqlarda, səsgücləndiricilərdə və daha çoxunda quraşdırılır.
Piezo emitentinin 2 açarı var və polarite vacibdir. Buna görə, qara pimi yerə (GND), qırmızı olanı PWM funksiyası (PWM) olan hər hansı bir rəqəmsal pinə bağlayırıq. Bu nümunədə, emitentin müsbət terminalı "D3" terminalına bağlıdır.
Addım 2
Piezo zil səsi müxtəlif yollarla istifadə edilə bilər. Ən sadə biri analogWrite funksiyasından istifadə etməkdir. Təsvirdə bir eskiz nümunəsi göstərilmişdir. Bu eskiz növbə ilə səsi saniyədə 1 dəfə tezliyə çevirir və söndürür.
Pin nömrəsini təyin etdik, bir çıxış olaraq təyin etdik. AnalogWrite () funksiyası 0-dan 255-ə qədər ola bilən bir pin nömrəsini və səviyyəni arqument kimi qəbul edir. Bu dəyər piezo tweeter-in həcmini kiçik bir aralığa dəyişdirəcəkdir. Limana "0" dəyərini göndərərək, piezo səsləndiricisini söndürün.
Təəssüf ki, analogWrite () istifadə edərək səsin düyməsini dəyişə bilməzsiniz. Piezo yayıcı həmişə Arduino UNO lövhələrindəki modulyasiya edilmiş nəbz genişliyi (PWM) sancaqlarının tezliyinə və buna bənzərlərinə təxminən 980 Hz tezliklə səs verəcəkdir.
Addım 3
İndi quraşdırılmış ton () funksiyasından istifadə edərək piezo emitentdən səs çıxaraq. Sadə eskiz nümunəsi nümunədə göstərilmişdir.
Səs funksiyası arqument kimi pin nömrəsini və səs tezliyini alır. Alt tezlik həddi 31 Hz, yuxarı limit piezo emitenti və insan eşitmə parametrləri ilə məhdudlaşır. Səsi söndürmək üçün noTone () əmrini porta göndərin.
Xahiş edirik unutmayın ki, Arduino-ya bir neçə piezo emitenti qoşulsa, eyni anda yalnız biri işləyəcək. Yayıcıyı başqa bir pimdə açmaq üçün noTone () funksiyasını çağıraraq mövcud səsdəki səsi kəsməlisiniz.
Əhəmiyyətli bir məqam: ton () funksiyası Arduinonun "3" və "11" sancaqlarındakı PWM siqnalının üzərinə qoyulmuşdur. Cihazlarınızı dizayn edərkən bunu unutmayın məsələn, "5" pinində deyilən funksiya tonu (), "3" və "11" pinlərinin işinə mane ola bilər.