Satura rādītājs:

Izveidosim SN76489 USB MIDI sintezatoru ar Arduino Nano: 7 soļi
Izveidosim SN76489 USB MIDI sintezatoru ar Arduino Nano: 7 soļi

Video: Izveidosim SN76489 USB MIDI sintezatoru ar Arduino Nano: 7 soļi

Video: Izveidosim SN76489 USB MIDI sintezatoru ar Arduino Nano: 7 soļi
Video: DIY: Arduino Spam Can Synth 2024, Jūlijs
Anonim
Image
Image
Izveidosim SN76489 USB MIDI sintezatoru ar Arduino Nano
Izveidosim SN76489 USB MIDI sintezatoru ar Arduino Nano
Izveidosim SN76489 USB MIDI sintezatoru ar Arduino Nano
Izveidosim SN76489 USB MIDI sintezatoru ar Arduino Nano

Vai esat kādreiz gribējuši izveidot savu sintezatoru, kura pamatā ir vecās 80. gadu mikroshēmas? Vai atskaņot vienkāršas polifoniskas melodijas, kas izklausās tāpat kā šīs vecās Sega Master System un Megadrive videospēles?

Man ir, tāpēc es pasūtīju dažas SN76489 mikroshēmas no ebay un midi resursdatora saskarnes un izmēģināju to. Nu, man tā nebija pastaiga parkā, bet es izbaudīju katru mirkli.

Vispirms es iemācījos tieši saslēgt SN76489 un radīt ar to troksni. Tam bija daži mulsinoši elementi, taču, izmantojot The Oddbloke Geek Blog un dažus citus piemērus, kopā ar mikroshēmas specifikācijas dokumentu es varēju izveidot vienkāršu arduino bibliotēku.

Tālāk man bija jāiemācās savienot midi tastatūru ar USB mini resursdatora vairogu. Tas nebija tik grūti, jo ir pieejama kāda dokumentācija, un ir labas bibliotēkas ar skaidriem piemēriem.

Kad es sapratu, kā kontrolēt mikroshēmu un kā savienot savu USB midi tastatūru, atlika tikai uzrakstīt kādu kodu, kas to visu saliktu kopā un ļautu izmantot mikroshēmas vadību ar tastatūru.

Pa ceļam es uzzināju, ka skaņas, kuru frekvence ir zemāka par tām, kuras mēģināju ģenerēt 0x2f midi notīm, neizklausījās pareizi, tāpēc es nolēmu to izmantot, lai ļautu nosūtīt troksni uz trokšņa ģeneratoru visām midi notīm starp 0x28 un 0x2f un arī atļaut atskaņot piezīmes ar austrumu arābu pieskārienu, ja tas ir mazāks par midi 0x28.

Skatoties atpakaļ, to bija ļoti jautri un ļoti interesanti būvēt.

Es ceru, ka jums tas šķitīs tikpat jautri un interesanti kā man, un ja jūs pats to uzbūvēsiet, jūs būsiet pietiekami laipni, lai dalītos ar dažām tās bildēm.

Ja jums patika šis projekts, lūdzu, balsojiet par to zemāk, lai palīdzētu uzvarēt konkursā, kurā tas piedalās

Piegādes

Esmu pievienojis saites uz materiāliem, kurus varat iegādāties šim projektam, tomēr jūs varētu atrast daudzus pieejamos priekšmetus, kurus varat nokasīt no vecās elektronikas.

Šīs saites ir saistītās saites, tādēļ, ja jūs pērkat pēc noklikšķināšanas uz tām, es saņemu nelielu daļu (nevis bagātību) un jūs iegūsit produktu, kas ir piemērots šim projektam. Par to izmantošanu nav jāmaksā vai jāmaksā papildus, taču jūs varat atrast līdzīgus priekšmetus, kas tos var viegli aizstāt.

ebay.us/svA4z4 | 1 x veiktspējas dēlis

ebay.us/ZyEFNp | 1 x arduino nano

ebay.us/t1zy0v | 1 x USB mini vairogs

ebay.to/2QrHl1C | 1 x SN76489 skaņas mikroshēma

ebay.us/aaaj8p | 1 x maiņu reģistrs 595

ebay.us/DSvTHO | 1 x 4MHz kristāla oscilators

ebay.us/XQeM0Q | 1 x 5V sprieguma regulators 7805

ebay.us/6R6Fpf | 1 x siltuma izlietne sprieguma regulatoram

ebay.us/xkLbn4 | 3 x 10uF kondensatori

ebay.us/pnm2BH | vadi

ebay.us/PMbUfY | 1 x sarkana gaismas diode strāvas padevei

ebay.us/zokHtc | 1 x 220 omu rezistors, lai ierobežotu LED strāvas plūsmu

ebay.us/qjbesJ | 1 x barošanas savienotājs 12V barošanas avotam

ebay.us/cS0wwv | 1 x ieslēgšanas/izslēgšanas slēdzis

piemērota kaste (es to uzbūvēju no vecas atvilktnes, kas gadiem ilgi atradās manā krātuvē)

1. darbība: USB mini resursdatora vairoga sagatavošana 5 V midi ierīces darbināšanai

USB mini resursdatora vairoga sagatavošana 5 V midi ierīces darbināšanai
USB mini resursdatora vairoga sagatavošana 5 V midi ierīces darbināšanai

Tā kā USB mini resursdatora vairogs darbojas ar 3,3 V spriegumu, un manām USB midi tastatūrām ir nepieciešami 5 V. līdz 5V.

Ir daudz apmācību, kā to izdarīt, un tas izrādījās diezgan vienkāršs:

Vienkārši nogrieziet līniju starp 2k2 rezistoru un Vcc līniju (skat. Pievienoto attēlu). Es izmantoju skrūvgriezi, lai saskrāpētu šo līniju, un pārbaudīju, vai tā darbojas ar nepārtrauktības mērītāju.

2. darbība: pievienojiet USB mini vairogu ar savu Arduino Nano

Pievienojiet USB mini vairogu ar savu Arduino Nano
Pievienojiet USB mini vairogu ar savu Arduino Nano
Pievienojiet USB mini vairogu ar savu Arduino Nano
Pievienojiet USB mini vairogu ar savu Arduino Nano

Par laimi, ir daudz informācijas par to, kā to izdarīt, tāpēc, meklējot "Arduino Nano un mini USB resursdatora vairogu", es nokļuvu šajā pavedienā

Tajā tika aprakstīts, kā pieslēgt USB mini v2.0 vairogu, un pēc tam sekoju tieši uz priekšu, lai pārbaudītu dažus USB midi piemērus.

Elektroinstalācija:

Arduino resursdatora vairogs

10--------------5

11--------------6

12--------------7

13--------------8

2----------------2

5V -------------- 1

3.3V ------------ 9

GND ----------- 3

RST ------------ 4

Šajā pavedienā tika minēts arī tas, ka viņi sagriež 3,3 V vadu, lai USB varētu iegūt 5 V no VBUS.

Šis apraksts un pievienotie attēli nāk no šī pavediena.

BTW, uz šīs tāfeles drukas ir kļūda, tāpēc tas bija nedaudz mulsinoši, tomēr jūs varat redzēt manas atsauksmes par to (tyrkelko) un no kurienes es to uzzināju.

3. solis: mikroshēmas kāds? SN76489 pievienošana ar 4 MHz Osc. un 595 maiņu reģistrs

Čipsi Kāds? SN76489 pievienošana ar 4 MHz Osc. un 595 maiņu reģistrs
Čipsi Kāds? SN76489 pievienošana ar 4 MHz Osc. un 595 maiņu reģistrs

Tagad bija pienācis laiks pievienot mikroshēmu, kas rada šo apbrīnojamo skaņu.

Es jau esmu izstrādājis bibliotēku arduino saskarnei ar šo mikroshēmu, un man bija tikai jāievēro mani norādījumi.

Bibliotēka tiek izlaista github saskaņā ar GPLv3 (mans pirmais atvērtā koda laidiens).

github.com/tyrkelko/sn76489

Savienojums 76489 un 595 bija tāds pats kā pievienotajā attēlā, kas uzņemts no bibliotēkas readme.txt faila

Rakstīšanas iespējošana zemā līmenī (NotWE) 76489 tika savienota ar nano 3. tapu, un to var mainīt kodā.

#define PIN_NotWE 3

595 tika savienots ar nano šādi, un to var arī pielāgot, rediģējot tapas numurus:

#define PIN_SER 7

#define PIN_LATCH 6

#define PIN_CLK 5

Oscilators, ko izmantoju, bija 4MHz kristāla oscilators ar 4 kājām.

Tas kodā tika konfigurēts šādi, un jūs varat pielāgot tā vērtību jebkurai oscilatora frekvencei no 500 kHz līdz 4 MHz:

#define FREQUENCY 4000000.0

Izmantotā oscilatora pievienošana bija šāda:

1. tapa - nav pievienots

pin 7 - zeme

pin 8 - savienots ar 76489 pin 14 - pulksteņa osc

4. darbība: vienkārši pievienojiet kodu - bibliotēku pievienošana, koda apkopošana un augšupielāde

Šajā projektā izmantotās bibliotēkas ir jāpievieno Arduino IDE šādi:

Atveriet Arduino IDE

Lejupielādējiet šādas bibliotēkas IDE bibliotēkas mapē (cerams, ka drīzumā tās atradīsit IDE izvēlnes “Rīki” izvēlnē “Pārvaldīt bibliotēkas…”):

github.com/felis/USB_Host_Shield_2.0

github.com/tyrkelko/sn76489

Izmantojiet kodu no šāda github projekta:

github.com/tyrkelko/usb_midi_tone

Lejupielādējiet usb_midi_tone.ino, apkopojiet un augšupielādējiet savā Arduino nano.

5. darbība: pievienojiet pastiprinātāju un skaļruni, pievienojiet USB midi tastatūru un pārbaudiet

Tagad ir pienācis laiks pārbaudīt, vai viss darbojas.

Lai to izdarītu, mums ir nepieciešams:

1. Pastiprinātājs un skaļrunis

2. USB midi tastatūra

Pievienojiet SN76489 7. kontaktu, audio izeju, pastiprinātāja audio ieejai.

Ieslēdziet pastiprinātāju un pēc tam ieslēdziet arduino nano. Tagad jums vajadzētu dzirdēt ieslēgšanas testa skaņu sekundes daļu.

Pievienojiet USB midi tastatūru un pārbaudiet.

Ja viss darbojas pareizi, jums vajadzētu būt iespējai atskaņot 3 toņus vienlaicīgi, kā arī atskaņot 8 veidu trokšņus un pat dažus ceturtdaļas toņus 24 EDO skalas.

Ja tas nedarbojas, veiciet darbības, lai redzētu, kas varētu būt nogājis greizi.

Ja jums liekas, ka tas izriet no neskaidriem norādījumiem, lūdzu, atstājiet man piezīmi, lai es atjauninātu norādījumus, lai to labotu.

6. darbība. Pabeidziet ķēdi ar 5 V sprieguma regulatoru, 12 V savienotāju, ieslēgšanas/izslēgšanas slēdzi un barošanas gaismas diode

Šajā solī jums vajadzētu būt iespējai ieslēgt ķēdi pēc pārbaudes, lai tā darbotos pareizi.

1. Pievienojiet jaudas regulatoru ar LM7805 un diviem 10uF kondensatoriem un 0,1uF. Par to ir daudz pamācību, lai to paveiktu, varat izmantot šādu pamācību-https://www.instructables.com/id/7805-Regulator-5V…

2. Pievienojiet 12 V strāvas savienotāju, lai Vcc iet caur ieslēgšanas/izslēgšanas slēdzi

3. Pievienojiet gaismas diodi ar ierobežojošu strāvas rezistoru, lai norādītu, kad barošana ir ieslēgta.

7. solis: iesaiņojiet kastē, krāsojiet un izbaudiet savu jauno sintēzi

Kad shēma ir pārbaudīta un darbojas pēc jūsu vēlmēm, vairs nav daudz jādara, izņemot jauku korpusa izveidi, krāsojiet to ar satriecošām krāsām un atskaņojiet mūziku.

Es ceru, ka jums patika lasīt šo pamācību un ka tā iedvesmoja jūs izveidot savu sintezatoru vai sākt strādāt ar citu projektu, pie kura strādājat.

Lūdzu, komentējiet zemāk ar visiem jautājumiem, un, ja, pamatojoties uz šo pamācību, esat uzbūvējis kaut ko līdzīgu, būtu lieliski, ja jūs dalītos ar paveikto sadaļā "Es to izdarīju!" apgabalā vai atsauksmju sadaļā.

Ieteicams: