Moin
Ich spiel grad ein bisschen mit MIDI rum, klappt theoretisch auch, aber halt nur theoretisch.
Folgendes Problem:
Das funktioniert einwandfrei:

Code:
$regfile = "M16def.dat"
$crystal = 16000000
Baud = 31250

Config Pind.5 = Output
Config Pind.6 = Output

Do
Print Chr(&Hb1) ; Chr(&H3) ; Chr(&H7f);
toggle portd.5
wait 1
Print Chr(&H91) ; Chr(&H60) ; Chr(&H7f);
toggle portd.6
wait1

Loop
End
Alles wird wünderschön empfangen und die LED schaltet um.

Aber wenn ich die Codes nach einem Tastendruck senden will, geht gar nichts mehr.
Code:
$regfile = "M16def.dat"
$crystal = 16000000
Baud = 31250

Config Pind.2 = Input                                       'taste1
Config Pind.3 = Input                                       'taste2
Config Pind.4 = Input                                       'taste3

Config Pind.5 = Output                                      'led
Config Pind.6 = Output                                      'led2

Do
Debounce Pind.2 , 1 , Taster1                          'taster entprellen
Debounce Pind.3 , 1 , Taster2
Debounce Pind.4 , 1 , Taster3
Loop
End

Taster1:
Print Chr(&Hb1) ; Chr(&H3) ; Chr(&H7f);
Toggle Portd.5
Return

Taster2:
Print Chr(&Hb1) ; Chr(&H12) ; Chr(&H0);
Toggle Portd.6
Return

Taster3:
Print Chr(&H91) ; Chr(&H60) ; Chr(&H7f);
Return
Am Interface blinkt zwar die MIDI-In Lampe, aber am PC kommen keine gültigen Midi-Daten an.
Auch funktioniert das umschalten der LED nur sporadisch.
Wenn ich Interrupts benutze geht es auch nicht.
Wenn ich eine If-Abfrage benutze, kommt zwar manchmal was an, aber oft nicht das richtige, oder es wird zuviel oder zu wenig gesendet.

Mfg und schon mal danke für die Hilfe