Mündəricat:

Arduino Synth / Tone Generator: 5 addım
Arduino Synth / Tone Generator: 5 addım

Video: Arduino Synth / Tone Generator: 5 addım

Video: Arduino Synth / Tone Generator: 5 addım
Video: Arduino Synth / Tone Generator 2024, Noyabr
Anonim
Arduino Synth / Tone Generator
Arduino Synth / Tone Generator

Bu, Arduino üçün doğma olan Tone əmrindən istifadə edən bir Synth / Tone Generatordur. Kvadrat dalğanın istənilən tezliyini oynamaq üçün qurula bilən 12 fərdi düyməyə malikdir. Bir düymə ilə oktavalara yuxarı və aşağı getmək qabiliyyətinə malikdir. Həm də "döyüntü" yaradan ikinci bir Arduino da var və hər vuruşda dövrə vura və potensiometrlə vuruş tempini tənzimləyə bilərsiniz. Tək natiqə çıxış edir. Mürəkkəb görünə bilər, amma bunu etmək olduqca sadədir və kodu dəyişdirərək səslərinizi fərdiləşdirə bilərsiniz.

Addım 1: Materiallar

  • 2 Arduino Unos
  • 17 1kΩ rezistorlar
  • 1 50kΩ potansiyometr
  • 16 toxunma açarı (düymələr)
  • 1 4Ω Dinamik
  • 1 9V Batareya
  • Çox tel

Son lövhəni lehimləmək və mənim kimi son bir məhsul etmək istəyirsinizsə, sizə də lazım olacaq

  • 1 Protoboard
  • 2 28 pinli priz
  • Kişi və Qadın Başlıqları
  • 1 5V tənzimləyicisi
  • 1 47 uF kondansatör
  • 2 16 Mhz Kristalları
  • 2 açma/söndürmə açarı
  • Açarları çıxarmaq üçün oyuncaq klaviatura

Addım 2: Çörək lövhəsini bağlayın

Çörək lövhəsini bağlayın
Çörək lövhəsini bağlayın
Çörək lövhəsini bağlayın
Çörək lövhəsini bağlayın
Çörək lövhəsini bağlayın
Çörək lövhəsini bağlayın

Yuxarıdakı şəkildən istifadə edərək çörək lövhəsində dövrə yaradın.

İlk arduino çəngəl üçün, hər biri öz çəkmə rezistoru olan 13-2 sancağa qədər 12 takt açarı. Eyni şəkildə A5 və A4 -ə daha 2 açarı bağlayın. Bağlanacaq son şey dinamikdir. Bir ucunu yerə və digər ucunu 0 pininə bağlayın.

İkinci arduino çəngəl 2 üçün əvvəllər olduğu kimi 9 və 10 -cu pinlərə keçid edilir. 50k potansiyometrini A0, 5V pininə və 1k müqavimətlə yerə bağlayın. Nəhayət, 8 pinini ilk arduinoda 0 pin etdiyiniz dinamikdəki eyni telə bağlayın. Hər iki arduino zəminini bir -birinə bağlamağı unutmayın.

Addım 3: Kod

Kod
Kod

Sonra Tone Keyboard kodunu birinci arduinoya, Ritm Bölmə kodunu isə ikinci ardunioya yükləyin. Kod yükləmək istəmirsə, spikeri müvəqqəti olaraq ayırın və yenidən cəhd edin.

Kodun özündə çox şeyi izah etdim, buna görə fərqli səslərə çatmaq üçün fərqli şeyləri necə dəyişdirəcəyinizi sizə göstərəcəyəm.

Klaviaturadakı hər bir düymənin tezliyini dəyişdirmək üçün Ton Klaviatura kodundakı Tone əmrindəki nömrəni dəyişdirməlisiniz (dəyişdirdiyiniz nömrəni aşağıda qalın hərflərlə yazmışam)

əgər (cN == YÜKSEK)

{ton (0, (16.35 * oktava)); }

Varsayılan olaraq musiqi notlarının əsas tezliyini qoydum, ancaq istədiyiniz kimi dəyişə bilərsiniz.

Beats/Ritmləri dəyişdirmək üçün Ritm Bölmə kodunu dəyişdirməlisiniz. Eynilə Tone koduna bənzər bir şey etmək lazımdır: tezliyi dəyişdirmək (aşağıda qalın) və hansı notu çalacağını dəyişəcək. Ritmə daha çox not əlavə etmək istəyirsinizsə, başqa bir gecikmə və ton əlavə edə bilərsiniz.

if (model == 1) {ton (8, 55, sensorHalf);

gecikmə (sensorValue);

ton (8, 58.27, sensorFourth);

gecikmə (sensor yarım);

ton (8, 58.27, sensorFourth);

gecikmə (sensor yarım); }

Öz ritminizi yaratmaq üçün hər bir oktavada hər bir musiqi notunun tezliyi olan yuxarıdakı cədvələ müraciət edə bilərsiniz.

Addım 4: Son Məhsulun Yaradılması

Son Məhsulun Yaradılması
Son Məhsulun Yaradılması
Son Məhsulun Yaradılması
Son Məhsulun Yaradılması
Son Məhsulun Yaradılması
Son Məhsulun Yaradılması

Bu addım isteğe bağlıdır, amma mənim etdiyimi etmək istəyirsinizsə hər iki mikro nəzarətçi ilə bir lövhə lehimləməli olacaqsınız. Etməli olduğunuz şey, IC -lərin arduino lövhəsindən çıxarılması və boş bir pcb -ə lehimlənməsi (prizlərdən istifadə etməlisiniz) etməniz lazım olan yeganə əlavə şey, hər bir IC -də 9 və 10 -cu pinlər arasında 16Mhz bir kristal bağlamaqdır. Dövrəni gücləndirmək üçün batareyadan 9V aşağı salmaq üçün 5V tənzimləyicidən istifadə etməlisiniz. Çıxışın sabit qalmasına kömək etmək üçün 5V ilə şasi arasına 47 uF kondansatör qoyun. Topraklama pin 8 və 5V IC -də pin 7 -dir. IC -də hansı pinlərin rəqəmsal pinlərə uyğun olduğunu görmək üçün Pinout diaqramına baxın. Əsasən, çörək taxtasındakı dövrəni götürüb pcb -yə köçürməkdir. Başlıqların lehimlənməsi əlavə vaxt tələb edə bilər, lakin problemlərin həllini çox asanlaşdıracaq, buna görə də onlardan istifadə etməyi məsləhət görürəm. Açarları yaratmaq üçün köhnə oyuncaq klaviaturanı ayırdım və hər düymənin altına taktiki açarları qoydum. Hər bir parçanı hazırladıqdan sonra bunun üçün bir çanta yarada bilərsiniz. Sadəcə hər şeyi bir qədər taxta yapışdırdım, amma istəsən mənimkindən daha yaxşı görünə bilərsən.

Addım 5: Test edin

Image
Image

İndi yeni synth ilə əylənə bilərsiniz. Yalnız 1 not polifoniyası var, buna görə yalnız sadə mahnıları çala bilərsiniz, ancaq ritm bölməsi açıldıqda həqiqətən sərin səslər çıxara bilərsiniz. Əylənin!

Tövsiyə: