Mündəricat:

HX1 -DM - Yenilənmiş Arduino DUE Powered DIY Baraban Maşını (Ölü Maschine MK2 ilə hazırlanmışdır): 4 addım
HX1 -DM - Yenilənmiş Arduino DUE Powered DIY Baraban Maşını (Ölü Maschine MK2 ilə hazırlanmışdır): 4 addım

Video: HX1 -DM - Yenilənmiş Arduino DUE Powered DIY Baraban Maşını (Ölü Maschine MK2 ilə hazırlanmışdır): 4 addım

Video: HX1 -DM - Yenilənmiş Arduino DUE Powered DIY Baraban Maşını (Ölü Maschine MK2 ilə hazırlanmışdır): 4 addım
Video: OpenStudio Chiller Comparison - Troubleshoot Curves 2024, Noyabr
Anonim
Image
Image
Təmir
Təmir

Xüsusi

  • Hibrid Midi idarəedici / baraban maşını: Arduino DUE powered!
  • 16 Çox aşağı gecikmə 1> ms olan sürət algılayıcı yastiqciqlar
  • İstənilən Midi #CC əmrinə təyin edilə bilən 8 düymə
  • 16ch Daxili sequencer (kompüterə ehtiyac yoxdur !!)
  • MIDI giriş/çıxış/funksionallıq (USB midi interfeysi kimi istifadə edilə bilər!)
  • Qismən MIDI saatı və MTC dəstəyi (MMC və DAW nəzarətində işləyir)

Bu, üzərində işlədiyim ən mürəkkəb layihələrdən biridir, 17 çıxış dəyişmə qeydindən, 6 giriş dəyişmə qeydindən, bir dövrə lövhəsində işləyən 2x 16 kanallı multipleksorlardan bəhs edirdim, nəyin və harada olduğunu heç bilmirəm, üstəlik heç vaxt qarışdırmadım. əvvəl növbəli qeydlər / multipleksorlar ilə ……

EBay -dən impulslu bir alış olaraq başladı, həqiqətən bir Native Instruments Maschine istədim, çünki sahib olduğum MPC studiyasındakılarla müqayisədə üzərindəki nağara yastiqciklərini həmişə bəyənmişəm, buna görə də eBay -də 40 funt sterlinqə arızalı birini gördüm. Ən pis vəziyyət ssenarisi ilə "bir Arduino DUE aldım və bir neçə UNO yatdı, hər zaman bir az hack edə bilərəm" deyərək düzəltməyə icazə verərdim.

Nağara yastiqciklerini cox sevirem !!!!

Təchizat

1 x nasaz Native Instruments Maschine MK2

1 x Arduino Vaxtı.

17 x SN74HC595 - 8 bit çıxış dəyişmə qeydləri

6 x SN74HC165 - 8 bitlik giriş dəyişmə qeydləri

2 x 74HC4067 - 16 kanallı multipleksorlar.

2 x 3.2 256x64 OLED ekran.

bir az düz tel (köhnə disket kabeli edəcək)

Addım 1: Təmir

EBay satıcısı, təsvirdə nə gözləyəcəyiniz barədə bir fikir verə biləcək qədər mehriban idi və USB portunu çıxardı. Lövhə həddindən artıq gərginlik keçirdi və açılmadı. Multimetrdən xəbərdar olun …. Lövhədə qısa bir şey var idi.. 'Mən əvvəllər şortlu saysız -hesabsız anakartları təmir etmişəm, nə qədər çətin ola bilər!?! əsas CPU daxil olmaqla lövhədə komponent. Bu lövhə həqiqətən pis vəziyyətdə idi!

Multimetrimlə çıxmağa və vurmağa davam etdim, komponentlər üzərində bir az araşdırma apardım və hər birinin nə etdiyini anladım, üstəlik NI anakartın ətrafındakı müxtəlif test nöqtələri ilə hər şeyi olduqca aydın etmək üçün əla bir iş gördü.

Addım 2: Hack

Hack
Hack
Hack
Hack
Hack
Hack

EBay -a müraciət etdiyim əsas CPU -da (lazım olmayacaq) hər şeyi dəyişdirməli olacağımı bildiyim üçün təşəkkür edirəm ki, lazım olan hər şey ucuz idi, buna görə də bir yük sifariş etmək əyləncəli idi. ?

17 x SN74HC595 - 8 bit çıxış dəyişmə qeydləri

17 çıxış dəyişmə qeydləri, baraban panelinin çox rəngli LED-lərini və bütün Düymə LED-lərini (dəqiq desək, 136) idarə etmək üçün istifadə olunur və istifadə etmək çox asandır və özümü saxlamaq üçün Arduino IDE-dən istifadə edərək tez bir kitabxana tapdım… birlikdə zəncirlənirlər.

6 x SN74HC165 - 8 bitlik giriş dəyişmə reyestri

Bu giriş keçid qeydləri 1 kanalda birdən çox giriş üçün əladır. Ümumilikdə 48 düymə var.

2 x 74HC4067 - 16 kanallı multipleksor

16 yastıq və 8 düyməmiz var, bunlar da analoqdur. Onları lövhədə olanlar 8 kanallı olduğu üçün istifadə etməyi daha asan tapdım və məlumat sancaqlarını hara bağlayacağımı tapmaqda problem yaşadım.. replika spagetti qovşağı …..

2 x 3.2 "256x64 OLED ekran

Bir az ekran olmalıdır !!! NI Maschine -ə daxil olan orijinal LCD ekranlar haqqında heç bir məlumat tapa bilmədim və artıq vaxt sərf etmək məni narahat edə bilmədi, buna görə də Çindən sifariş vermək qərarına gəldim … Bunları işlətmək üçün UG8x8 kitabxanasından istifadə etdim. Yeni ekranlar orijinaldan bir qədər kiçik idi, buna görə də "pis bitləri" boşaltdım.

1 x Arduino Vaxtı

Bütün bu gücə layiq bir layihəni gözləyərək bir müddət yalan danışdım! Qarşılaşdığım bir problem var idi, Deyəsən bu lövhələrin bəzi düzəlişlərində sıfırlama problemi var ki, bu da bir eskiz yüklədikdən sonra işə düşmək üçün bəzən sıfırlama düyməsini basmalı olduğumu bildirir. Bu 10K rezistorla asanlıqla düzəldildi (bu barədə Arduino forumunda bir yazı var).

Addım 3: Kod

Arduino cəmiyyətində nə qədər dəstəyin olması məni heyran etdi, müxtəlif komponentlər üçün kod nümunələri və kitabxanalar tapmaq həqiqətən sadə və düz idi.

USB midi -ni işə salmaq asan idi və bir neçə dəqiqə çəkdi. LED -lər bir az vaxt aldı və hər pimi tədricən 1 saniyəlik YÜKSƏK olaraq təyin edən bir eskiz yaratmaq məcburiyyətində qaldım və hər şeyi kodlaşdırmağa gəldikdə PIN kodlarını tutan bir sıra düzəltdim.

Multipleksorlarla danışmaq üçün 2 kitabxana hazırladım, biri analoq yastıqları, digəri düymələri idarə edir. Yenə də bu çox sadə idi. Əlavə etdim ki, redaktə və s. İstifadə etməkdən çekinmeyin.

Bir sıraya sahib olmaq və bir kompüterə ehtiyac olmadan qeyd etmək qabiliyyətinə sahib olmaq istədim, BPM -ni ms -ə çevirmək haqqında bəzi məlumatlar tapdım və əla bir Arduino DUE timer kitabxanası tapdım.

Taymer kitabxanasından istifadə edərək oxu girişlərini və əşyaları aralıqlarla təyin edə bildim:

Pads @ 1ms - Bunu cavab / de -sıçrama əsərləri arasında ən yaxşı tarazlığı təmin etmək üçün tapdım.

Düymələr @ 40ms - Növbə kitabxanasından istifadə etdim, buna görə heç bir pres buraxılmadı.

İşləmə əsas döngədə aparılır, ara verərkən çox şey edə bilməzsiniz, çünki bu Arduino'yu kilidləyəcək.

Midi məhsulları @BPM (msn) - ardıcıllıq üçün, istədiyiniz BPM -də ETC qeydlərinin yenilənməsini və vuruş sayğacını artırmasını tələb edən bir funksiya deyilir.

Addım 4: Nəticə

Nəticə
Nəticə

Burada nələr hazırladığımdan əmin deyiləm, amma çox qürur duyuram, yastıqlar əla cavab verir, cavab vermə və problemlərin aradan qaldırılması ilə düzgün tarazlığı əldə etmək üçün vaxtla məşğul olmalı idim. Ardıcıllıq əla işləyir və DAW dəstəyini anladıqdan sonra bu işi iş axınıma tam inteqrasiya edə bilərəm və hər zaman istədiyim bir nəzarətçiyə şeylər əlavə edə bilirəm! C-ni tutmaqda, tərs mühəndisliyi və multipleksorların, keçid qeydlərinin və MIDI ardıcıllığının necə işlədiyini başa düşmək. Əsas kodu təkmilləşdirməyə davam edirəm və bir gün açıq mənbə ritm dizayneri olaraq buraxa bilərəm.

İPUÇLARI:

Arduino/SAM qovluğundakı başlıq sənədlərindən birini düzəldərək DUE -nin USB adını necə dəyişdirəcəyimi tapdım.

MIDI-OX, Midi funksionallığını yoxlamaq üçün əla vasitədir

Əlaqələr:

www.usb.org/sites/default/files/midi10.pdf - USB MIDI Spechttps://midi.teragonaudio.com/tech/miditech.htm https://guitargearfinder.com/guides/convert-ms -mi… BPM -ni ms -ə necə çevirmək barədə bəzi məlumatlar

travis-ci.com/SMFSW/Queue - Düymə girişləri üçün heç bir presləməni əldən verməyəcəyik!

github.com/olikraus/u8g2/wiki/u8x8referenc… - LED/LCD Ekranlar üçün UG8 lib

github.com/ivanseidel/DueTimer/releases - Arduino DUE Zamanlama lib

www.pjrc.com/teensy/td_libs_Encoder.html - Böyük düymə üçün kodlayıcı Lib

shiftregister.simsso.de/ - ShiftIn Qeydiyyat lib - Henrik Heine tərəfindən yaradılmışdır, 24 iyul 2016

forum.arduino.cc/index.php?topic=57636.0 - MIDI Zaman Kodu məlumatları

Tövsiyə: