Ардуиноны пайдаланып дыбыстарды әр түрлі жолмен шығаруға болады. Олардың ішіндегі ең қарапайымы - тақтаға пьезо-эмитентті (немесе пьезо-үндестірушіні) қосу. Бірақ мұнда әрдайым нюанстар бар. Жалпы, оны анықтайық.
Қажетті
- - компьютер;
- - Ардуино;
- - пьезо эмитенті (пьезо зумзері).
Нұсқаулық
1-қадам
Пьезо эмитенті немесе пьезоэлектронды эмитент немесе пьезо зумзері - бұл кері пьезоэлектрлік эффектіні қолданатын электр-акустикалық дыбыс шығаратын қондырғы. Мұны қарапайым түрде түсіндіру үшін - электр өрісінің әсерінен мембрананың механикалық қозғалысы пайда болады, бұл біз еститін дыбыстық толқындарды тудырады. Әдетте, мұндай дыбыс шығарғыштар тұрмыстық электронды қондырғыларда дыбыстық дабыл сияқты, жұмыс үстеліндегі дербес компьютерлерде, телефондарда, ойыншықтарда, дауыс зорайтқыштарда және т.б. орнатылады.
Пьезо эмитентінде 2 саңылау бар, ал полярлық маңызды. Сондықтан біз қара түйреуішті жерге қосамыз (GND), ал қызыл түсті кез келген PWM функциясы бар сандық штырларға қосамыз (PWM). Бұл мысалда эмитенттің оң терминалы «D3» терминалына қосылған.
2-қадам
Пьезо дыбыстық сигналын әртүрлі тәсілдермен пайдалануға болады. Ең қарапайымы - analogWrite функциясын қолдану. Эскиздің мысалы суретте көрсетілген. Бұл эскиз дыбысты кезекпен секундына 1 рет қосады және өшіреді.
Біз пин нөмірін орнаттық, оны шығыс ретінде анықтаңыз. AnalogWrite () функциясы аргумент ретінде PIN нөмірін және деңгейді алады, ол 0-ден 255-ке дейін болуы мүмкін. Бұл мән пьезо-твиттердің көлемін аз ауқымда өзгертеді. Портқа «0» мәнін жіберу арқылы пьезо-дыбыстық сигналды өшіріңіз.
Өкінішке орай, сіз analogWrite () көмегімен дыбыс кілтін өзгерте алмайсыз. Пьезо-эмитент әрдайым шамамен 980 Гц жиіліктегі дыбыс шығарады, бұл Arduino UNO тақталарындағы импульстің ені модуляцияланған (PWM) түйреуіштердің жиілігіне сәйкес келеді.
3-қадам
Енді кірістірілген тон () функциясын қолданып, пьезо-эмитенттен дыбыс шығарайық. Қарапайым эскиздің мысалы суретте көрсетілген.
Тон функциясы аргумент ретінде пин нөмірін және дыбыстық жиілікті алады. Төменгі жиілік шегі - 31 Гц, жоғарғы шегі - пьезо-эмитенттің параметрлері және адамның есту қабілеті. Дыбысты өшіру үшін noTone () командасын портқа жіберіңіз.
Егер Arduino-ға бірнеше пьезо-эмитент қосылса, бір уақытта тек біреуі жұмыс істейтінін ескеріңіз. Эмитентті басқа істікшеге қосу үшін noTone () функциясын шақыру арқылы ағымдағы дыбысты тоқтату керек.
Маңызды мәселе: тон () функциясы Ардуиноның «3» және «11» түйреуіштеріндегі PWM сигналына қосылады. Құрылғыларды жобалау кезінде осыны ескеріңіз, себебі мысалы, «5» түйреуішінде деп аталатын функциялық тон (), «3» және «11» түйреуіштердің жұмысына кедергі келтіруі мүмкін.