Tartalomjegyzék:

Arduino Soundlab: 3 lépés
Arduino Soundlab: 3 lépés

Videó: Arduino Soundlab: 3 lépés

Videó: Arduino Soundlab: 3 lépés
Videó: Arduino soundlab 2024, Október
Anonim
Image
Image
Építkezés
Építkezés

Hihetetlen, hogy milyen csodálatos hangok széles skálája hozható létre az FM szintézis technikájával, még egy sima Arduino használatával is. Egy korábbi utasításban ezt egy szintetizátorral szemléltettük, amely 12 előre programozott hangot tartalmazott, de egy néző azt javasolta, hogy sokkal hűvösebb lenne, ha potenciométerekkel teljes mértékben ellenőrizni lehetne a hangparamétereket, és így van!

Ebben a hanglaboratóriumban a hangokat 8 paraméterrel lehet szabályozni: 4 a hangerő ADSR burkolólapja és 4 a textúrát meghatározó frekvencia moduláció.

A 8 potenciométer hozzáadása nem ment a kulcsok számának árán: három 8 kulcsos sorozat egymás után néhány mikroszekundumot olvas ki, összesen 24 kulcsot, ami két teljes oktávnak felel meg. Valójában két Arduino csap nincs használatban, és 40 kulcsra bővíthető.

Nézze meg a videót, hogyan lehet vad hangokat kiadni, itt egy rövid áttekintés:

* A = támadás: az idő, amíg egy hang eléri a maximális hangerőt (8ms-2s tartomány)

* D = hanyatlás: ideje, hogy a hang csökkenjen az állandó hangerő szintjére (8ms-2s tartomány)

* S = fenntartás: állandó hangerő (0-100%tartomány)

* R = elengedés: a hang elhalásának ideje (8ms-2s tartomány)

* f_m: a modulációs frekvencia és a vivőfrekvencia (0,06-16 tartomány) értékeinek aránya 1 alatt az aláfestéseket, a magasabb értékeket a felhangokat eredményezi

* beta1: az FM moduláció amplitúdója a hang elején (tartomány 0,06-16) a kis értékek a hang textúrájának kisebb eltéréseit eredményezik. a nagy értékek őrült hangokat eredményeznek

* béta2: az FM moduláció amplitúdója a hang végén (0,06-16 tartomány) Adjon a beta2-nek a béta1-től eltérő értéket, hogy a hang textúrája időben fejlődjön.

* tau: az a sebesség, amellyel az FM amplitúdója a béta1-ből a béta 2-be fejlődik (tartomány 8ms-2s) A kis értékek rövid bummot adnak a hang elején, a nagy értékek hosszú és lassú fejlődést.

1. lépés: Építés

Építkezés
Építkezés
Építkezés
Építkezés
Építkezés
Építkezés

Nyilvánvaló, hogy ez még mindig egy prototípus, remélem, egy nap én vagy valaki más megépítjük ezt a nagy és erős és gyönyörű nagy kulcsokkal és valódi tárcsákkal a potenciométerekhez egy fantasztikus házban …

Szükséges alkatrészek:

1 Arduino Nano (nem fog működni az Uno -val, amely csak 6 analóg bemenettel rendelkezik)

24 nyomógomb

8 potenciométer, 1 kOhm - 100 kOhm tartományban

1 db 10 kOhm -os potenciométer a hangerő szabályozásához

1 kondenzátor - 10 mikrofarados elektrolit

1 db 3,5 mm -es fülhallgató -csatlakozó

1 LM386 audió erősítő chip

2 1000mikrofarados elektrolit kondenzátor

1 kerámia 1 mikrofarad kondenzátor

1 mikrokapcsoló

1 8 ohm 2 wattos hangszóró

1 db 10x15 cm -es prototípus tábla

Győződjön meg róla, hogy megértette a mellékelt rajzokat. A 24 gomb 3 8-as csoportba kapcsolódik, amelyeket ki kell olvasni a D0-D7-nél, és be kell kapcsolni a D8-on, D10-en és D11-en. Az edények +5V feszültségűek és földeltek a végcsapokon, a központi csapokat pedig az A0-A7 analóg bemenetekre táplálják. A D9 rendelkezik hangkimenettel, és a 10 kOhm-os potenciométerhez váltóáramot csatlakoztat a hangerő szabályozásához. A hang közvetlenül hallgatható fülhallgatóval, vagy felerősíthető egy LM386 audioerősítő csippel.

Mindez elfér egy 10x15 cm -es prototípusú táblán, de a gombok túl közel vannak ahhoz, hogy jól játsszanak, ezért jobb lenne nagyobb billentyűzetet készíteni.

Az áramkör táplálható az Arduino Nano USB -csatlakozóján keresztül, vagy külső 5 V -os tápegységgel. A 2xAA elemdoboz, majd a fokozatos átalakító tökéletes megoldás az energiaellátáshoz.

2. lépés: Szoftver

Töltse fel a mellékelt vázlatot az Arduino Nano készülékre, és mindennek működnie kell.

A kód egyszerű és könnyen módosítható, nincs gépi kód és nincs megszakítás, de van pár közvetlen interakció a regiszterekkel, az időzítővel való interakció, a gombok leolvasásának felgyorsítása és az ADC viselkedése a potenciométer leolvasásához

3. lépés: Jövőbeli fejlesztések

A közösség ötleteit mindig szívesen fogadjuk!

Engem leginkább a gombok zavarnak: aprók, és nyomva erősen kattannak. Nagyon jó lenne, ha nagyobb gombok lennének, amelyeket kényelmesebb nyomni. Emellett az erő- vagy sebességérzékeny gombok lehetővé teszik a hangok hangerejének szabályozását. Esetleg működnek a 3-utas nyomógombok vagy az érintésérzékeny gombok?

További szép dolgok lennének a hangbeállítások EEPROM -ban való tárolása. A rövid dallamok EEPROM -ban való tárolása sokkal érdekesebb zenét is lehetővé tenné. Végül bonyolultabb hangok is előállíthatók, ha valaki tudja, hogyan kell ütőhangokat generálni számítási szempontból hatékony módon, az fantasztikus lenne…

Ajánlott: