Mundarija:

Kubazani Arduino asosidagi MIDI bilan boshqarish: 4 qadam
Kubazani Arduino asosidagi MIDI bilan boshqarish: 4 qadam

Video: Kubazani Arduino asosidagi MIDI bilan boshqarish: 4 qadam

Video: Kubazani Arduino asosidagi MIDI bilan boshqarish: 4 qadam
Video: WANIWAZIA MEEMA ALINCE CHOIR BAKIJE UMURIRO MUGITARAMO ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅ 2024, Iyul
Anonim
Kubani Arduino asosidagi MIDI bilan boshqarish
Kubani Arduino asosidagi MIDI bilan boshqarish

Bir do'stim kompyuterga o'tmasdan va klaviaturada yozmasdan masofadan turib yozishni to'xtatishi uchun tugmani bosib, ovoz yozib oluvchi Cubase dasturini boshqarishni xohlardi. Siz buni boshqa yozish dasturlarida qilishingiz mumkin, biz shunchaki Cubase -dan foydalanamiz.

1 -qadam: Sizga nima kerak

Sizga nima kerak
Sizga nima kerak

Odatda ochiq tugmachalar (har bir bajariladigan harakat uchun bittasi) 10K Ohmli rezistor (har bir tugma uchun bitta) yaxshi 5V kuchlanishli Arduino. Men tashqaridan quvvat olishim kerak edi (men Diecimila ishlaydigan yalang'och suyak versiyasidan foydalanayapman) uni bu erdan oling Lehimsiz non paneli (shunga o'xshash) MIDI ulagichi (sizga faqat bittasi kerak, chunki siz qilayotgan ishingiz dis kabi yuboriladi) 220- Ohm rezistor (MIDI uyasi uchun) Cubase yoki boshqa yozish dasturlari bilan ishlaydigan kompyuter MIDI kabeli (bu erda 20'er) Sizga USB -dan MIDI -ga kirish kerak bo'lishi mumkin, men uni ishlatganman va yoqtirganman.

2 -qadam: Uskuna sozlamalari

Uskunani sozlash
Uskunani sozlash
Uskunani sozlash
Uskunani sozlash

Sxema va rasm biriktirilgan. QAYD: sxemasi ITP jismoniy hisoblash ishidir

Asosan, 5V - nazorat piniga o'tish, 10 pinli rezistorni nazorat pinidan GNDgacha uzatish MIDI uyasi uchun 5 -pinli ketma -ket pin, 4 -dan 5 -gacha bo'lgan 220 -rezistor orqali Arduino -ga quyidagi eskizni yuklang: {{{ /* Konvertatsiya qilish Arduino -ni MIDI tekshiruvchisiga kerakli miqdordagi raqamli kirishlar * yordamida. * * Bu eskiz MIDI 5 -kanalda 2 ta MIDI eslatmasini yuborish uchun tuzilgan *, lekin uni boshqa yozuvlar va kanallar uchun osonlikcha qayta sozlash mumkin * * 2008 yil 3 -noyabrda yaratilgan * Hyeki Min * * 2009 yil 14 -mayda o'zgartirilgan * Petyr Stretz * Pastki va baland pin * yozuvlar klaviatura kabi o'ynab turishi, keraksiz pimlarni olib tashlashi, MIDI kanalini 5 -ga o'zgartirishi * uchun o'zgartirilgan mantiqni o'zgartirdi. 2014 yil 15 aprel * endi Arduino 1.0 yoki undan keyingi versiyalarda ishlatilmaydi. NoteOn ()*dan olib tashlandi

// biz ishlatadigan pinlarni aniqlang, MIDI porti har doim Arduino pin 1 (TX) int switchPin1 = 2; int switchPin2 = 3;

// umumiy midi yozuvlari char note1 = 60; // O'rta C belgisi not2 = 62; // D

// o'zgaruvchilar int switchState1 = LOW; int switchState2 = LOW; int currentSwitchState1 = LOW; int currentSwitchState2 = LOW;

void setup () {// kirish -chiqish pinlarining holatini o'rnating: pinMode (switchPin1, INPUT); pinMode (switchPin2, INPUT);

// MIDI uzatishni sozlash: Serial.begin (31250); } void loop () {// switchPin1 currentSwitchState1 = digitalRead (switchPin1); agar (currentSwitchState1 == HIGH && switchState1 == LOW) // push // 5 -kanaldagi eslatma (0x94), ba'zi eslatma qiymati (eslatma), o'rta tezlik (0x45): noteOn (0x94, note1, 0x45); agar (currentSwitchState1 == LOW && switchState1 == YUQORI) // chiqarish // 5 -kanaldagi eslatma (0x94), ba'zi eslatma qiymati (eslatma), jim tezlik (0x00): noteOn (0x94, note1, 0x00); switchState1 = currentSwitchState1; // switchPin2 currentSwitchState2 = digitalRead (switchPin2); agar (currentSwitchState2 == HIGH && switchState2 == LOW) // push // 5 -kanaldagi eslatma (0x94), ba'zi eslatma qiymati (eslatma), o'rta tezlik (0x45): noteOn (0x94, note2, 0x45); agar (currentSwitchState2 == LOW && switchState2 == YUQORI) // chiqarish // 5 -kanaldagi eslatma (0x94), ba'zi eslatmalar qiymati (eslatma), jim tezlik (0x00): noteOn (0x94, note2, 0x00); switchState2 = currentSwitchState2; } // MIDI eslatmasini yoqish/o'chirish xabarini yuboring. void noteOn (char cmd, char data1, char data2) {Serial.print (cmd); Serial.print (ma'lumotlar1); Serial.print (ma'lumotlar2); }}}}

3 -qadam: dasturiy ta'minotni sozlash

Dasturiy ta'minotni sozlash
Dasturiy ta'minotni sozlash
Dasturiy ta'minotni sozlash
Dasturiy ta'minotni sozlash
Dasturiy ta'minotni sozlash
Dasturiy ta'minotni sozlash
Dasturiy ta'minotni sozlash
Dasturiy ta'minotni sozlash

Cubase MIDI yozuvlarini harakatlarga aylantira oladigan umumiy masofadan boshqarish pulti uchun o'rnatilishi mumkin. Ekran tasvirlari Cubase 3 -dan olingan, lekin ular boshqa versiyalarda farq qilmasligi kerak. Qo'llanmani boshqa ro'yxatga olish dasturlari uchun tekshiring. "Qurilmalar" menyusida "Qurilmani sozlash" -ni tanlang. Qurilmani sozlash oynasi paydo bo'lganda, boshqaruv elementini qo'shish uchun ortiqcha belgisini bosing va "Umumiy masofadan boshqarish pulti" ni tanlang. QAYD: versiyaga qarab sizga kerak O'ng tarafdagi masofadan boshqarish pultini tanlang va chapga qo'shish uchun o'qni bosing. Qurilmalar ro'yxatida "Umumiy masofadan boshqarish pulti" tugmachasini bosgandan so'ng, oyna quyida joylashgan uchinchi ekran tasviriga o'xshab ketishi kerak. Ochilgan ro'yxatdagi MIDI kiritishni o'rnating. Mennikidan farqli o'laroq, yuqori qutidagi birinchi "Fader 1" tugmasini bosing. Masofadan boshqarish pulti ulanganligiga ishonch hosil qiling, "O'rganish" tugmachasini bosib ushlab turing va masofadan boshqarish tugmalaridan birini bosing, keyin qo'yib yuboring. "O'rganing" dan. Agar siz kodni o'zgartirmagan bo'lsangiz, MIDI kanali va manzili menikiga mos keladigan tarzda o'zgarishi kerak. Fader 2 uchun ham xuddi shunday qiling va sizga kerak bo'lgan ko'p tugmalar uchun. Maksimal qiymatni "1" ga o'zgartiring, men ekran tasvirini olishdan oldin bunday qilmaganman. Pastki oynada siz boshqaruv nima qilishini belgilaysiz. Tanlovlar juda ko'p, lekin bizga faqat Record and Stop kerak. "Qurilma" ro'yxatidan "Buyruq" ni, "Kanallar/toifalar" ro'yxatidan "Tashish" -ni tanlang, so'ngra "Qiymat/harakat" ro'yxatidan tegishli harakatni tanlang. O'zgartirmoqchi bo'lgan katakchani bosish, ochiladigan ro'yxatlarni ochishi kerak. Endi hamma narsa tayyor bo'lishi kerak. Boshqaruvni aniq belgilash uchun qayta nomlash -ni tanlang, masalan, TRANSPORT va Qo'llash -ni bosing, so'ng OK -ni bosing. E'tibor bering, men urgan eslatmalarni tanimaslik muammosiga duch keldim. + Va -yonida "Qurilmalarni tiklash" tugmasi bor, men bir marta urganimda hamma narsa ishlagan.

4 -qadam: Bibliografiya

Bibliografiya
Bibliografiya

Men kredit berish kerak bo'lgan joyga kredit berishga ishonaman: https://itp.nyu.edu/physcomp/Tutorials/MusicalArduino - Arduino MIDI -ga eslatib o'tdi: https://www.indiana.edu/~emusic/etext/MIDI/chapter3_MIDI4. shtml - MIDI eslatmasi haqida ma'lumot https://www.dancetech.com/article.cfm? threadid = 172

Tavsiya: