- obsługa komunikatów MIDI typu CC, PC,
- obsługa 16 kanałów MIDI,
- 2 wyjściowe interfejsy MIDI,
- 6 pokręteł regulacyjnych oraz 6 przycisków przeznaczonych do pracy w roli foot-switchy,
- każdy potencjometr reguluje wartość wybranego kontrolera CC, lub PC,
- każdy foot-switch wysyła wartość wybranego kontrolera CC (oddzielnie dla krótkiego i długiego przyciśnięcia przycisku) oraz wartość wybranego kontrolera PC
- 14 banków pamięci – 13 presetów plus bieżące ustawienia,
- interfejs użytkownika zrealizowany z użyciem wyświetlacza graficznego i impulsatora,
- zasilanie napięciem 5...9 VDC, pobór prądu ok. 25 mA
Interfejs MIDI, choć wymyślony w latach 80., jest na tyle uniwersalny, że z powodzeniem jest stosowany w najnowszych urządzeniach estradowych. W praktyce prawie każde urządzenie estradowe korzysta z dobrodziejstw tego medium transmisyjnego, zaś jednym z powodów użycia technologii MIDI jest szeroka dostępność i uniwersalność takich sterowników. To swego rodzaju ewenement, gdyż trudno znaleźć w świecie informatyki drugie takie ponadczasowe rozwiązanie! Zatem, zanim przejdę do opisu projektu, w skrócie przypomnę podstawowe informacje dotyczące sprzęgu MIDI.
Interfejs MIDI
Jest szeregowym interfejsem komunikacyjnym pracującym z szybkością 31250 (±1%) bits/s, w którym dane przesyłane są w paczkach po 8 bitów, z jednym bitem startu i jednym bitem stopu, bez bitów kontroli parzystości. Układ wejściowy interfejsu MIDI wykonuje się zwykle przy użyciu szybkiego transoptora (6N138), który zamienia prąd w linii (ok. 5 mA) na przebiegi napięciowe, zaś interfejs wyjściowy to zwykle para rezystorów ograniczających prąd diody LED w urządzeniu odbiorczym. W standardzie MIDI dane przesyłane są grupowo w formie tzw. komunikatów (Messages), przy czym wprowadzono bardzo prosty sposób na odróżnienie bajtów poleceń sterujących (Status Byte) od bajtów danych (Data Byte): bajty poleceń mają ustawiony najstarszy bit (0xFF...0x80), a bajty danych najstarszy bit mają wyzerowany (0x7F...0x00). Zwykle informacje przesyłane są w kolejności: bajt polecenia i po nim jeden lub dwa bajty danych (w zależności od rodzaju polecenia). Polecenia wysyłane są tylko przy zmianie danego elementu sterującego. Bajt polecenia określa jedną ze standardowo zdefiniowanych funkcji, którą instrument ma wykonać (4 najstarsze bity), np. Note On/Off (włącz/wyłącz nutę), Control Change (zmień parametr urządzenia), Program Change (zmień rodzaj brzmienia), oraz numer kanału MIDI, na którym informacja ma być odebrana (pozostałe 4 bity określające jeden z 16 kanałów MIDI).
Dla porządku należy wspomnieć o możliwości ograniczenia transferu danych poprzez usunięcie redundancji, z której korzysta metoda Running Status. Polega ona na wysłaniu jednego bajta polecenia i wielu bajtów danych (bez każdorazowego ponawiania bajta polecenia) w przypadku przesyłania tego samego rodzaju sygnałów sterujących jeden za drugim, np. sygnały wywołane zmianą jednego i tego samego regulatora.