Seminarium-kopia.pdf

(834 KB) Pobierz
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Temat pracy:
Gitarowy sterownik midi
Opiekun:
dr inż. Aleksandra Nowacka-Leverton
mgr inż. Sławomir Sikora
846110237.012.png 846110237.013.png
Główne założenia projektowe
Celem pracy było zbudowanie kontrolera MIDI wysyłającego komunikaty zmiany parametrów urządzenia takie jak:
bank pamięci przechowujący dźwięki czy zestaw predefiniowalnych parametrów, ustawienia poszczególnych
parametrów wzmacniacza gitarowego itp.
Układ przesyła:
- standardowe komunikaty zmiany dźwięku NOTE_ON Events
- komunikaty zmiany banków dźwięków urządzenia Program Change Events
- komunikaty zmiany parametrów czy zastosowanych efektów dla poszczególnych banków System Exclusive
Events
Dodatkowo jest wzbogacony o :
- możliwość ustalania typu wysyłanego komunikatu z poziomu kontrolera bez potrzeby wtórnego programowania
- obsługę wyświetlacza do wizualnej reprezentacji danych
846110237.014.png 846110237.015.png
Czym jest MIDI
Protokół MIDI ( Musical Instrument Digital Interface ) jest udaną próbą ujednolicenia standardu
komunikacji między syntezatorami.
W najprostszym ujęciu jest to środek za pomocą którego jest przesyłana informacja o wydaniu dźwięku.
Przesyłany komunikat zawiera w sobie informacje dotyczące:
- akcji naciśnięcia klawisza
- częstotliwości wydanego dźwięku
- sile nacisku i czasie trwania nuty
Dane są wysyłane poprzez pętlę prądową więc nie ma żadnego elektrycznego połączenia między nadajnikiem a
odbiornikiem.
Fizycznie dane mogą być wysłane tylko z jednego urządzenia do drugiego.
846110237.001.png 846110237.002.png 846110237.003.png
Budowa ramki MIDI
Standardowy komunikat MIDI składa się z 3 bajtów:
bajt statusbyte i 2 bajty datatype
Bajt status-byte zawiera w sobie :
4 starsze bity zawierające typ przesyłanej informacji MIDI.
4 młodsze zawierające informację o używanym kanale MIDI.
Pierwszy bajt datatype zawiera informacje o częstotliwości wydawanego dźwięku.
Drugi bajt datatype zawiera informacje o sile brzmienia wydawanego dźwięku.
Bajty datatype nie mają ustawionego najstarszego bitu więc operujemy na przedziale 0-127. Tonalnie
odpowiada to rozpiętości ponad 12 oktaw.
846110237.004.png 846110237.005.png 846110237.006.png 846110237.007.png
Protokół komunikacyjny
W celu wysłania komunikatów MIDI wykorzystany został protokuł UART
UART ( Universal Asynchronous serial Receiver and Transmitter ) jest układem pozwalającym na
prowadzenie prostych transmisji szeregowych.
Typowa ramka transmisyjna składa się z bitu startu, przesyłanego słowa 8 bitowego i ewentualnie bitów parzystości oraz
bitu stopu. Dana informacja w postaci binarnej jest przesyłana od najmłodszego do najstarszego bitu
Interfejs UART służy do komunikacji szeregowej zarówno asynchronicznej (czyli bez linii zegarowej) jak i synchronicznej
dającej większą pewność i szybkość transmisji. Moduł ten przy użyciu odpowiednich konwerterów nadaje się zarówno do
popularnej komunikacji RS232 (stosowanej w komputerach osobistych) jak i RS485 (chętnie stosowanym protokole w
przemyśle ze względu na swoją wysoką odporność na zakłócenia i relatywnie dużym zasięgu transmisji)
846110237.008.png 846110237.009.png 846110237.010.png 846110237.011.png
Zgłoś jeśli naruszono regulamin