Technik Droschken

Austausch eines Musikstückes

Programmiert sind die Objekte im AVR Studio 4. Der Quellcode ist in C geschrieben mit meinen eigenen Bibliotheken.


Vorbereiten der Midi-Datei

Die Midi-Datei muss sich im Format0 befinden. Das mache ich mit dem freien Programm Anvil Studio. Dort die Mididatei öffnen und unter
Export Midi-Format 0 File ...
neu abspeichern.

Jetzt mit einem selbst geschriebenen Programm umwandeln (Nur Windows).
Zuerst in das Feld
*.h Datei erzeugen
klicken. Dann muss bei erfolgreicher Umlandung in das Midi-Format 0 im
Midi Format
die
Null
stehen und bei
Anzahl Tracks
die
1
. Ansonsten geht es nicht.


Download für Umwandlungsprogramm:   HIER

Das Programm muss nicht installiert werden. Einfach die MidiZuH.exe abspeichern und dann doppelt klicken und damit öffnen (virenfrei). Das Programm erzeugt eine *.h Datei. Diese in den Projektordner von Studio 4 kopieren.

Studio 4 öffnen.

Wir befinden uns nun im Studio 4. Das Projekt suchen und die Main.aps öffnen.
Dort im Ordner
Header Files
gibt es die
_Projekt.h
Datei. Doppelklick darauf.

Das Tempo für das jeweilige Stück, kann man bei der neusten Version
2025_MiniPro_PB
von außen über ein Poti einstellen. Sehr bequem.



Nun sehen wir oben die Auswahl der Droschken (4 Stück). Die jeweilige Droschke anwählen.
//
löschen oder setzen, jeweils nur eine Droschke aktivieren.
Nun die aktuelle h-Datei einbringen über
#include
. Also die Datei austauschen. Die Angabe Tempo 5 ist nur Orientierung, kann ignoriert werden.


../
heißt: Ein Pfad zurück.
/
heißt: Pfad.

Beispiel:

Ausdünnen der *.h Datei (optional)

Wenn man will, kann man sich mal die *.h Datei anschauen und ggf. verschiedene Meta und SysEx Daten usw. rauslöschen. ACHTUNG: Aufpassen. Die Datei wird auch rückwärts gespielt.
Wegen des Speichers und der besseren Verarbeiten ist diese Prozedur sinnvoll.

Aufbau einer Midi-Datei

Im AVR Studio die *.h Datei anzeigen lassen. Dazu auf Header Files rechts klicken und
Add Existing Header File(s)...
wählen. Dort dann die h Datei suchen und öffnen

Jetzt kann man die Datei sehen und Werte verändern.

Mein Programm sucht am Anfang die SysEx Befehle und sortiert diese raus. Man kann jetzt bis auf einen Befehl alles raus löschen.
Man sucht nach
FF bzw. 255

Das darauffolgende Byte bezeichnen den Befehl, also z.B. Tempo: Die
81
.
Das dritte Byte sagt uns die Anzahl der nun folgenden Werte.
3
also noch drei Bytes
8 82 176
die anschließende Null muss dann auch weg, sie trifft die Aussage über die Dauer bis zum nächsten Ereignis. Also in Null Sekunden würde es weiter gehen. Da wir aber das ganze Ereignis weglöschen, können / müssen wir auch die Folgezeit weglöschen. Wir löschen also
255,81,3,8,82,176,0,



Das nächste was wir raus nehmen könnten, wäre die Reihe:
255,88,4,4,2,24,8,0,

Dann
255,89,2,0,0,0,
usw.

Nur ganz am Ende muss die Reihe
255,47,0
stehen bleiben, sie ist das Zeichen für das Ende des Midi (h) Files. Also das nicht löschen.


Programmierung


Ich verwende das Arduinoboard Mini Pro ohne aber die Arduino Software. Die Programmieranschlüsse gehen zum ISP Anschluss des Programmierdongels.
Wo aber ist die Seite wo GND ist? Der offene Pin ist Vcc. Den brauchen wir nicht. Ich habe die Seite der Buchse, wo sich GND befindet, markiert.