Агуулгын хүснэгт:

Arduino Nano ашиглан SN76489 USB MIDI Synth бүтээцгээе: 7 алхам
Arduino Nano ашиглан SN76489 USB MIDI Synth бүтээцгээе: 7 алхам

Видео: Arduino Nano ашиглан SN76489 USB MIDI Synth бүтээцгээе: 7 алхам

Видео: Arduino Nano ашиглан SN76489 USB MIDI Synth бүтээцгээе: 7 алхам
Видео: Homemade SN76489 + Arduino nano synth with original demo composition 2024, Долдугаар сарын
Anonim
Image
Image
SN76489 USB MIDI Synth -ийг Arduino Nano -той бүтээцгээе
SN76489 USB MIDI Synth -ийг Arduino Nano -той бүтээцгээе
SN76489 USB MIDI Synth -ийг Arduino Nano -той бүтээцгээе
SN76489 USB MIDI Synth -ийг Arduino Nano -той бүтээцгээе

80-аад оны үеийн хуучин чип ая дээр үндэслэн өөрийн синтезаторыг бүтээхийг хүсч байсан уу? Эдгээр хуучин Sega Master System болон Megadrive видео тоглоомууд шиг санагддаг энгийн полифон аялгууг тоглоорой?

Надад eBay болон midi хост интерфэйсээс хэд хэдэн SN76489 чип захиалж, зураг авалт хийлээ. Энэ бол миний хувьд цэцэрлэгт хүрээлэнгээр зугаалах явдал биш байсан ч надад хором мөч бүр таалагдсан.

Эхлээд би SN76489 -тэй шууд холбогдож, түүнтэй дуу чимээ гаргахыг сурсан. Үүнд зарим ойлгомжгүй элементүүд байсан боловч The Oddbloke Geek Blog болон бусад хэдэн жишээг ашиглан бичил схемийн тодорхойлолтын баримт бичгийн хамт энгийн arduino номын санг бий болгож чадсан юм.

Дараа нь би USB мини бамбайтай midi гартай хэрхэн харьцах талаар сурах ёстой байв. Зарим баримт бичиг байгаа бөгөөд тодорхой номын сантай сайн номын сан байдаг тул энэ нь тийм ч хэцүү биш байв.

Би чипийг хэрхэн хянах, USB midi гараа хэрхэн интерфэйслэхээ ойлгосны дараа хийх ёстой зүйл бол энэ бүгдийг ороосон код бичиж, чипийг удирдах гарыг ашиглах явдал юм.

Замдаа би 0x2f хэмжээтэй midi тэмдэглэл гаргах гэж оролдсоноосоо бага давтамжтай дуу сонсогдож байгаа нь тийм ч зөв биш болохыг олж мэдээд 0x28 -аас 0x2f хооронд ямар ч midi тэмдэглэлд дуу чимээ үүсгэгч рүү дуу чимээ илгээхийг зөвшөөрөхийн тулд үүнийг ашиглахаар шийдлээ. мөн midi 0x28 -аас доогуур байвал дорно дахины араб гараар тэмдэглэл тоглохыг зөвшөөрнө үү.

Эргээд харахад маш хөгжилтэй, бүтээхэд маш сонирхолтой байсан.

Над шиг хөгжилтэй, сонирхолтой санагдсан гэж найдаж байна, хэрэв та өөрөө үүнийг хийвэл түүний зургийг хуваалцахад таатай байх болно гэж найдаж байна.

Хэрэв танд энэ төсөл таалагдсан бол оролцож буй уралдаанд ялахын тулд доор саналаа өгөөрэй

Хангамж

Би энэ төсөлд зориулж худалдаж авах боломжтой материалын холбоосыг нэмж оруулсан боловч хуучин электроникаас хусах боломжтой олон зүйлийг олж авах боломжтой.

Эдгээр холбоосууд нь түншлэлийн линкүүд тул та тэдгээрийг дарсны дараа худалдаж авбал би багахан хэсгийг (аз биш) авах бөгөөд та энэ төсөлд тохирсон бүтээгдэхүүнийг авах болно. Эдгээрийг ашиглахад ямар нэгэн хураамж, нэмэлт зардал шаардагддаггүй, гэхдээ та тэдгээрийг маш амархан сольж болох ижил төстэй зүйлийг олж болно.

ebay.us/svA4z4 | 1 x гүйцэтгэлийн самбар

ebay.us/ZyEFNp | 1 x arduino нано

ebay.us/t1zy0v | 1 x USB мини бамбай

ebay.to/2QrHl1C | 1 x SN76489 дууны чип

ebay.us/aaaj8p | 1 x ээлжийн бүртгэл 595

ebay.us/DSvTHO | 1 x 4MHz давтамжтай болор осциллятор

ebay.us/XQeM0Q | 1 x 5V хүчдэлийн зохицуулагч 7805

ebay.us/6R6Fpf | Хүчдэл зохицуулагчийн 1 ширхэг дулаан шингээгч

ebay.us/xkLbn4 | 3 x 10uF конденсатор

ebay.us/pnm2BH | утаснууд

ebay.us/PMbUfY | 1 x улаан LED

ebay.us/zokHtc | LED гүйдлийн урсгалыг хязгаарлах 1 х 220 ом эсэргүүцэл

ebay.us/qjbesJ | 12 в цахилгаан хангамжийн 1 x цахилгаан холбогч

ebay.us/cS0wwv | 1 x асаах/унтраах унтраалга

тохиромжтой хайрцаг (би олон жилийн турш агуулахад амарч байсан хуучин шүүгээнээс уурхай барьсан)

Алхам 1: 5V Midi төхөөрөмжийг жолоодохын тулд USB Mini Host Shield -ийг бэлтгэх

5V Midi төхөөрөмжийг жолоодохын тулд USB Mini Host Shield -ийг бэлтгэж байна
5V Midi төхөөрөмжийг жолоодохын тулд USB Mini Host Shield -ийг бэлтгэж байна

USB мини хост бамбай нь 3.3V дээр ажилладаг бөгөөд миний ашигладаг USB midi товчлууруудад 5В хүч шаардагддаг тул USB гаралтын Vcc руу явдаг 3.3V шугамыг таслах замаар бамбайны гаралтын хүчдэлийг тохируулах шаардлагатай байдаг тул бид дараа нь холбож болно. 5V хүртэл.

Үүнийг хэрхэн хийх талаар маш олон заавар байдаг бөгөөд энэ нь маш энгийн болсон.

2k2 резистор ба Vcc шугамын хоорондох шугамыг хайчилж аваарай (хавсаргасан зургийг үзнэ үү). Би энэ шугамыг зурахдаа шургуулагч ашиглаж, тасралтгүй хэмжигчтэй ажилладаг эсэхийг шалгасан.

Алхам 2: USB Mini Shield -ийг Arduino Nano -тойгоо холбоно уу

USB Mini Shield -ийг Arduino Nano -тойгоо холбоно уу
USB Mini Shield -ийг Arduino Nano -тойгоо холбоно уу
USB Mini Shield -ийг Arduino Nano -тойгоо холбоно уу
USB Mini Shield -ийг Arduino Nano -тойгоо холбоно уу

Аз болоход үүнийг хэрхэн хийх талаар маш их мэдээлэл байгаа тул "Arduino Nano болон mini USB хост бамбай" -г хайж олох замаар би энэ сэдвийг олж авлаа

Энэ нь USB mini v2.0 бамбайг хэрхэн холбох талаар тайлбарласан бөгөөд үүнийг дагаж дууссаны дараа шууд USB midi -ийн зарим жишээг туршиж үзэв.

Утас:

Arduino Host бамбай

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

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

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

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

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

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

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

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

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

Энэ сэдвээр тэд 3.3V хүчдэлийг тасалж, USB 5V -ийг VBUS -ээс авах боломжтой гэж дурдсан болно.

Энэхүү тайлбар болон хавсаргасан зургууд нь энэ утаснаас ирсэн болно.

BTW, энэ самбар дээрх хэвлэмэл хуудсан дээр алдаа гарсан тул энэ нь бага зэрэг ойлгомжгүй байсан боловч миний энэ талаархи сэтгэгдлийг (тиркелко), хаанаас олж мэдсэнийг та харж байна.

Алхам 3: Чипс байгаа хүн байна уу? 4MHz Osc -тэй SN76489 -ийг нэмж байна. болон 595 ээлжийн бүртгэл

Чипс байна уу? SN76489 -ийг 4MHz Osc -тай нэмж байна. болон 595 ээлжийн бүртгэл
Чипс байна уу? SN76489 -ийг 4MHz Osc -тай нэмж байна. болон 595 ээлжийн бүртгэл

Одоо энэ гайхалтай дууг гаргах чипийг нэмэх цаг болжээ.

Би энэ чипээр arduino -той харьцах номын сан боловсруулсан бөгөөд зөвхөн миний зааврыг дагах ёстой байсан.

Номын сан нь GPLv3 (миний анхны нээлттэй эх хувилбар) дор github -д гардаг.

github.com/tyrkelko/sn76489

76489 ба 595 -ийн холболт нь номын сангийн readme.txt файлаас авсан хавсаргасан зураг дээрх шиг байсан.

76489 -ийн Бичихийг идэвхжүүлэх (NotWE) нь нано 3 -р зүүтэй холбогдсон бөгөөд кодыг өөрчилж болно.

#тодорхойлох PIN_NWWE 3

595 нь нано руу дараах байдлаар холбогдсон бөгөөд зүү дугаарыг засварлах замаар тохируулж болно.

#PIN_SER -ийг тодорхойлох 7

#PIN_LATCH тодорхойлох

#PIN_CLK тодорхойлох 5

Миний ашигладаг осциллятор бол 4 хөлтэй 4MHz болор осциллятор байсан.

Үүнийг кодонд дараах байдлаар тохируулсан бөгөөд та түүний утгыг 500 кГц -ээс 4 МГц -ийн хоорондох аливаа осцилляторын давтамжид тохируулж болно.

#давтамжийг тодорхойлох 4000000.0

Миний ашиглаж байсан осцилляторыг дараах байдлаар холбосон.

зүү 1 - холбогдоогүй

зүү 7 - газар

зүү 8 - 76489 зүү 14 -тэй холбогдсон

Алхам 4: Зүгээр л код нэмээрэй - Номын санг нэмж, кодыг эмхэтгэж, байршуулна уу

Энэхүү төсөлд ашигласан номын санг Arduino IDE -д дараах байдлаар нэмэх шаардлагатай.

Arduino IDE -ийг нээнэ үү

Дараахь номын санг IDE -ийн номын сангийн фолдерт татаж аваарай (эдгээрийг IDE "Хэрэгслүүд" цэсний "Номын санг удирдах …" цэснээс удахгүй харах болно гэж найдаж байна):

github.com/felis/USB_Host_Shield_2.0

github.com/tyrkelko/sn76489

Дараах github төслийн кодыг ашиглана уу.

github.com/tyrkelko/usb_midi_tone

Usb_midi_tone.ino татаж аваад хөрвүүлээд Arduino нано дээрээ байршуулаарай.

Алхам 5: Өсгөгч ба чанга яригчийг холбож, USB Midi гараа холбоод тест хийнэ үү

Одоо бүх зүйл ажиллаж байгааг шалгах цаг болжээ.

Үүнийг хийхийн тулд бидэнд хэрэгтэй:

1. Өсгөгч ба чанга яригч

2. USB midi гар

SN76489 зүү 7, аудио гаралтыг өсгөгчийн аудио оролттой холбоно уу.

Өсгөгчийг асаагаад дараа нь arduino наног асаана уу. Та одоо хэдхэн секундын турш асаах туршилтын дууг сонсох ёстой.

USB midi гарыг холбоод тест хийнэ үү.

Хэрэв бүх зүйл зөв хийгдсэн бол та 3 тонныг нэгэн зэрэг тоглож, 8 төрлийн дуу чимээ, тэр ч байтугай 24 EDO-Scale-ийн дөрөвний нэгийг тоглуулах боломжтой байх ёстой.

Хэрэв энэ нь ажиллахгүй бол юу буруу болохыг олж мэдэхийн тулд алхам алхмаар явна уу.

Хэрэв танд энэ нь тодорхой бус зааварчилгааны үр дүн гэж бодож байвал надад тэмдэглэл үлдээгээрэй, ингэснээр би үүнийг засахын тулд зааврыг шинэчилж байна.

Алхам 6: 5V хүчдэлийн зохицуулагч, 12V холбогч, асаах/унтраах унтраалга, цахилгаан LED ашиглан хэлхээг бөглөнө үү

Энэ алхамд та хэлхээг зөв ажиллаж байгаа эсэхийг шалгасны дараа боох боломжтой байх ёстой.

1. LM7805 болон хоёр 10uF конденсатор, 0.1uF бүхий тэжээлийн зохицуулагчийг нэмнэ. Энэ талаар маш олон гарын авлага байгаа тул та үүнийг хэрэгжүүлэхийн тулд дараах зааварчилгааг ашиглаж болно-https://www.instructables.com/id/7805-Regulator-5V…

2. 12V хүчдэлийн холбогчийг асаах/унтраах товчлуураар дамжуулж буй Vcc -ийг нэмнэ үү

3. Хязгаарлагдмал гүйдэлтэй резистор бүхий LED -ийг нэмж асаах үед зааж өгнө.

Алхам 7: Хайрцагт хийж, будаж, шинэ синтусаа сайхан өнгөрүүлээрэй

Цахилгаан хэлхээг туршиж үзээд таны хүссэнээр ажиллавал сайхан хашаа барихаас өөр хийх ажил үлдэхгүй, гайхалтай өнгөөр будаж, хөгжим тоглуулаарай.

Энэхүү зааварчилгааг унших нь танд таалагдсан гэж найдаж байна, энэ нь танд өөрийн синтез бүтээх эсвэл ажиллаж байгаа өөр төслөө хэрэгжүүлэхэд урам зориг өгсөн гэж найдаж байна.

Асуух зүйлээ доор бичээрэй, хэрэв та энэ заавар дээр үндэслэн үүнтэй төстэй зүйл бүтээсэн бол "Би үүнийг хийлээ!" Хэсэгт хийсэн зүйлээ хуваалцвал маш сайн байх болно. хэсэг эсвэл санал хүсэлтийн хэсэгт.

Зөвлөмж болгож буй: