MC14067 PIC17C77 ile Midi Kontrol

| Mayıs 17, 2023 Tarihinde güncellendi
MC14067 PIC17C77 ile Midi Kontrol

Birkaç yıl önce, PC’ler yazılım sentezini gerçekleştirecek kadar güçlü olmaya başladı. Kendi adıma, Pentium 166MHz MMX’imde ReBirth ile gerçek zamanlı yazılım sentezini keşfettim. Elbette PC’de Virtual Waves gibi sentez yazılımları vardı ama gerçek zamanın gelmesi en azından benim için bir dönüm noktası yarattı. Ama aynı zamanda yeni bir ihtiyaç yarattı .

Parametreleri ‘canlı’da kullanmak fare ile kolay değildir. Bu nedenle çözümler, sentez yazılımını kontrol etmek için diğer midi uyumlu enstrümanları kullanmaktı. Ancak bu şekilde deney yaptıysanız, ortaya çıkardığı sorunları kesinlikle fark etmişsinizdir… Kontroller çoğu zaman onları kullanmak istediğiniz kullanıma uygun değildir, etkilenen potansiyometrelerin neredeyse her zaman istendiğinde kullanıldığından bahsetmiyorum bile. bu makinelerin paralel kullanımını sağlamak.

Bu gözlemlere dayanarak, üreticilerin ihtiyaç duymasını ve birkaç ürün tahsis etmesini birkaç yıl beklemeden, OPAZ adlı otonom bir midi denetleyicinin yapımına giriştim. Tabii ki olan buydu ve şu anda (28/10/2003) piyasada bu tür bir ürün buluyoruz.

O zamanlar proje orijinaldi, şimdi daha az, ancak özel/özel bir MIDI kontrol masası gerçekleştirmeyi düşünüyorsanız, ilginizi çekebilecek kolayca uyarlanabilir bir proje.

Dahası, elektronikte neredeyse hiçbir şey yokken… ve tasarım nispeten basitken, bu tür ekipman üreticilerinin ürünlerini hangi fiyata sergilediğini görmek beni her zaman eğlendirir. Küçük prototipimin maliyeti hiçbir şekilde 800 frangı (evet, zamanın kuruşlarını;) veya modern olmak için yaklaşık 120 avroyu geçmiyor 🙂 Tabii prototipin çalışması ve tasarımı bana çok daha pahalıya mal oldu, ancak prototipi olduğu gibi alırsanız, tamamı için (bileşenler, kutu, konektörler, plaka, ofset vb.) 120 Euro iyi bir tahmindir.

mc14067-midi-control-pic17c77-midi-kontrol-midi-devres

OPAZ projesinin amacı Hedefleri iki bölüme ayıracağım:

Temel amaç 15 döner düğmeye göre MIDI sinyalleri sağlamaktır. Daha kesin olarak, döner düğmelerin 15 potansiyometresi, kendisi aynı zamanda AD dönüşümüyle ilgilenecek olan bir Microchip PIC16C77 mikrodenetleyici tarafından kontrol edilen bir çoklayıcı tarafından taranacaktır. Dijitale çevirmeyi bitirir bitirmez elde ettiği değeri hafızasında tuttuğu eski değerle karşılaştırır ve eğer bu değiştiyse (yani potansiyometre döndürüldüyse) yenisini iletir. MIDI protokolü. Daha sonra üç bayt aktarılır (kanal numarası ve ‘Kontrol Değişikliği’ tipi – kontrolör numarası – kontrolör değeri). Şimdi ana hatlar için. Aslında program biraz daha karmaşık, örneğin ben Bir değerin zamansız bir şekilde iletilmesi nedeniyle midi kanalının doymasını önleyen, çıkarma işlemine (ve 8 bitten 7 bit’e geçişe) dayalı küçük bir anti-osilasyon rutini kullanır veya son bit bazen 1’de bazen 0’da okunur dönüştürücü. Aynı şekilde, IC’nin tasarımını basitleştiren bir denetleyici numarası yeniden atama rutini de kullanıyorum. Ancak daha fazla bilgi için kaynaklara bakmanızı tavsiye ederim.

İkinci amaç ise konsolun alt kısmında bulunan 5 adet switch/led’i kullanarak bir yandan midi komutları (not, kontrol…) göndermek, diğer yandan led’i başka bir yerden bir midi verisine göre konumlandırmaktır. . Bu işlemleri gerçekleştirmek için, bir çoklayıcı ve bir durum belleği olmak üzere iki yonga kullanılır – 74HC4051 ve 74HC259. Ne yazık ki, bu işlevlerin yazılım uygulamasını hiç bitirmedim… Amatörlere dikkat!

There a few years, PC began to be powerful enough to réaliserde software synthesis. For my part, I discovered the real time software synthesis with ReBirth on my Pentium 166MHz MMX. Of course, software synthesis exist on the PC, such as Virtual Waves, but the arrival of real-time creates a turning point for me anyway. At the same time, he created a new need.

to remain general, the main objective is to provide MIDI signals function 15 knobs. More specifically, the 15 faders knobs will be scanned by a multiplexer, itself controlled by a microcontroller Microchip PIC16C77 which will at the same time take care to do the AD conversion. As soon as he finished the conversion to digital, it compares the value obtained with the old value that was stored in memory, and if it has changed (so if the knob was turned) it will transmit the new value in accordance with the MIDI protocol. Three bytes are transferred (channel number & type ‘Control Change’ – controller number – value of the controller). So much for the outline. In fact, the program is a little more complex, for example, I use a small anti-oscillation based subtraction (and passing 8 bits to 7 bits) routine which avoids having a saturation due to canal du midi inadvertent transmission of a value or the last bit is sometimes read 1 0 now to read by the converter. In the same vein, I also use a routine reassignment numbers controllers, which simplifies the design of CI. But I suggest you look at the sources for more information.

– The second objective is to use the 5 switches / leds down the desk to send midi commands (note, control …) on the one hand and position the LED according to a given Noon ‘ other. To perform these operations, two chips are used, a multiplexer and a state memory – 74HC4051 & 74HC259. Unfortunately, I never finished the software implementation of these features … The fans!

Kaynak: m.bareille.free.fr/opaz/opaz.html

mc14067-pic17c77-ile-midi-kontrol

Şifre-Pass: 320volt.com

Yayım tarihi: 2008/06/23 Etiketler: , , , , , ,



Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir