MIDI LED MONITOR
Verfasst: 23. Okt 2014, 15:20
Im Zuge von MIDI Projekten muß man einfach wissen, was da so an
Midi Daten gesendet wird.
Geht zwar exellent mit Laptop / PC und Programm MIDI OX, nur
dieses Programm hat wie andere die MIDI Daten darstellen eben ein
MANKO :
Es wird NIRGENDS angezeigt ob zb ein RUNNING STATUS vorliegt oder nicht.
MIDI OX ergänzt in seiner Datendarstellung die Datenbytes mit dem letzten gesendeten Status.
Sogesehen zwar richtig aber nicht der REALITÄT genüge getan.
Es wird eine falsche MIDI Daten Situation vorgegaukelt.
Habe mir daher eine kleines Programm geschrieben um genauer zu wissen, was da so an Daten gesendet wird und
vor allem WIE
Das Programm wurde in Assembler geschrieben und ist mit 30 Mikrosekunden der kompletten Auswertung einer MIDI Information recht schnell.
Es benötigt somit noch nicht einmal den üblichen FIFO Datenpuffer im seriellen Eingang, also alles Realtime job.
Die vorhandene MIDI Testplatine wurde um eine LED Anzeige aller Ports
ergänzt
Testaufbau
Die Anzeige signalisiert folgende MIDI Daten:
NOTE ON KANAL 1
NOTE ON KANAL 2
NOTE ON KANAL 3
NOTE OFF KANAL 1
NOTE OFF KANAL 2
NOTE OFF KANAL 3
NOTE ON / OFF KANAL 4 - 16
BANK / PRGCHANGE KANAL 1
BANK / PRGCHANGE KANAL 2
BANK / PRGCHANGE KANAL 3
BANK/ PRGCHANGE KANAL 4 - 16
OTHER STATUSBYTES
ACTIVE SENSE (per Filter abschaltbar )
SYSEX DATEN
RUNNING STATUS ( rote LED )
Alle Daten werden nach Auswertung für LED Anzeige auch gesendet
ACTIVE SENSE Bytes können per Schaltereinstellung ausgefiltert werden
Eine Kontroll LED ( 3 x blinken) zeigt Bereitschaftsstatus an
Funktion:
Wird zB ein NOTE ON auf Kanal 1 erkannt
leuchtet die LED NOTE ON KANAL1
ab dem dritten Datenbyte in Folge was empfangen wird ( hier fehlt eigentlich ein neues Statusbyte ) liegt der sogenannte RUNNING STATUS vor
Ist dies der Fall leuchtet zusätzlich zur LED NOTE ON KANAL 1 die rote LED
RUNNING STATUS
Diese LED erlischt erst wenn ein neues Statusbyte empfangen wird.
Würde ein Keyboard nach jeder Taste ( NOTE ON ) einen NOTE OFF senden würde auch dies angezeigt
Also Taste Drücken LED NOTE ON ( Kanal 1 - 3 ) an
Taste loslassen LED NOTE OFF ( Kanal 1 - 3 ) an
Interessant dürften für die Orgel nur die Kanäle 1 - 3 sein entsprechend
OM , UM , Pedal
Daher sind diese Kanäle auch mit einzelnen jeweiligen LED ausgestattet
Desgleichen auch das was evtl Bank / Programmchange Befehle für die
Kanäle 1 - 3 betrifft
NOTE ON/ OFF für die Kanäle 4 - 16 in einer LED zusammengefaßt
genau wie Bank / Programmchangebefehle der Kanäle 4 - 16 in eine einzelnen LED
Da der MIDI LED MONITOR per 9 V Block betrieben wird und somit unabhängig wird ihm noch ein passendes Gehäuse verpaßt
und eine für diesen Zweck maßgeschneiderte Platine
Midi Daten gesendet wird.
Geht zwar exellent mit Laptop / PC und Programm MIDI OX, nur
dieses Programm hat wie andere die MIDI Daten darstellen eben ein
MANKO :
Es wird NIRGENDS angezeigt ob zb ein RUNNING STATUS vorliegt oder nicht.
MIDI OX ergänzt in seiner Datendarstellung die Datenbytes mit dem letzten gesendeten Status.
Sogesehen zwar richtig aber nicht der REALITÄT genüge getan.
Es wird eine falsche MIDI Daten Situation vorgegaukelt.
Habe mir daher eine kleines Programm geschrieben um genauer zu wissen, was da so an Daten gesendet wird und
vor allem WIE
Das Programm wurde in Assembler geschrieben und ist mit 30 Mikrosekunden der kompletten Auswertung einer MIDI Information recht schnell.
Es benötigt somit noch nicht einmal den üblichen FIFO Datenpuffer im seriellen Eingang, also alles Realtime job.
Die vorhandene MIDI Testplatine wurde um eine LED Anzeige aller Ports
ergänzt
Testaufbau
Die Anzeige signalisiert folgende MIDI Daten:
NOTE ON KANAL 1
NOTE ON KANAL 2
NOTE ON KANAL 3
NOTE OFF KANAL 1
NOTE OFF KANAL 2
NOTE OFF KANAL 3
NOTE ON / OFF KANAL 4 - 16
BANK / PRGCHANGE KANAL 1
BANK / PRGCHANGE KANAL 2
BANK / PRGCHANGE KANAL 3
BANK/ PRGCHANGE KANAL 4 - 16
OTHER STATUSBYTES
ACTIVE SENSE (per Filter abschaltbar )
SYSEX DATEN
RUNNING STATUS ( rote LED )
Alle Daten werden nach Auswertung für LED Anzeige auch gesendet
ACTIVE SENSE Bytes können per Schaltereinstellung ausgefiltert werden
Eine Kontroll LED ( 3 x blinken) zeigt Bereitschaftsstatus an
Funktion:
Wird zB ein NOTE ON auf Kanal 1 erkannt
leuchtet die LED NOTE ON KANAL1
ab dem dritten Datenbyte in Folge was empfangen wird ( hier fehlt eigentlich ein neues Statusbyte ) liegt der sogenannte RUNNING STATUS vor
Ist dies der Fall leuchtet zusätzlich zur LED NOTE ON KANAL 1 die rote LED
RUNNING STATUS
Diese LED erlischt erst wenn ein neues Statusbyte empfangen wird.
Würde ein Keyboard nach jeder Taste ( NOTE ON ) einen NOTE OFF senden würde auch dies angezeigt
Also Taste Drücken LED NOTE ON ( Kanal 1 - 3 ) an
Taste loslassen LED NOTE OFF ( Kanal 1 - 3 ) an
Interessant dürften für die Orgel nur die Kanäle 1 - 3 sein entsprechend
OM , UM , Pedal
Daher sind diese Kanäle auch mit einzelnen jeweiligen LED ausgestattet
Desgleichen auch das was evtl Bank / Programmchange Befehle für die
Kanäle 1 - 3 betrifft
NOTE ON/ OFF für die Kanäle 4 - 16 in einer LED zusammengefaßt
genau wie Bank / Programmchangebefehle der Kanäle 4 - 16 in eine einzelnen LED
Da der MIDI LED MONITOR per 9 V Block betrieben wird und somit unabhängig wird ihm noch ein passendes Gehäuse verpaßt
und eine für diesen Zweck maßgeschneiderte Platine