MIDI Daten Lesen?

Support-Forum für Deutschsprachige, die in ihrer Muttersprache schreiben möchten.

Moderator: Benj

kHz-tone
Posts: 1
Joined: Mon Apr 08, 2013 2:16 pm
Contact:

MIDI Daten Lesen?

Postby kHz-tone » Mon Apr 08, 2013 2:47 pm

hallo liebe Flowcode Gemeinde,

Ich bin neu hier im Forum, habe vor einigen Tagen Flowcode5 entdeckt und bin neugierig geworden. Da ich kaum Programmierkenntnisse habe scheint FC5 das richtige Programm zu sein um mich auch ein wenig in die Welt der µC einzuarbeiten.
Ich will mir ein MIDI-Interface bauen, mit dem ich 4 Ein- und 4 Ausgänge frei Routen kann. Die Hardware ist soweit klar.
Mein Problem besteht im Lesen der ankommenden Daten.
Ich verstehe die 2 Macros 2ReceiveMIDI" und "ReadData" nicht.

Was macht "ReceiveMIDI"?
Was ist das "cTimeout(Byte)"?

Was macht "ReadData"?
Was ist das "cIdx(Byte)"?

Hoffe ihr könnt mir da weiterhelfen.
Gruß
Philipp

User avatar
Rudi
Posts: 666
Joined: Mon Feb 10, 2014 4:59 am
Has thanked: 494 times
Been thanked: 188 times

Re: MIDI Daten Lesen?

Postby Rudi » Sun Mar 30, 2014 2:55 pm

kHz-tone wrote:hallo liebe Flowcode Gemeinde,

Mein Problem besteht im Lesen der ankommenden Daten.
Ich verstehe die 2 Macros 2ReceiveMIDI" und "ReadData" nicht.

Was macht "ReceiveMIDI"?
Was ist das "cTimeout(Byte)"?

Was macht "ReadData"?
Was ist das "cIdx(Byte)"?


Hi Philipp,

Midi Format ist klar? Also kurz:

Status
Note
Velocity

"Was macht "ReceiveMIDI"?"

Das empfängt Deinen Midi String der aus 3 Bytes besteht also
ReceiveMIDI(MidiIn)
bei einem Timeout von 255
wartet es dann bis es die Drei Bytes erhält..
MidiIn Ist dann Type String


Was ist das "cTimeout(Byte)"?

0 wartet es nicht sondern fährt fort im Programm
255 wartet es bis es drei Bytes bekommen hat
dazwischen liegen die Zeitwerte von 1 bis 254 .. von wenig warten bis viel warten

Was macht "ReadData"?

Liest dann Dein Byte das Du wissen willst aus deinem Midi String

Das erste Bye aus dem MidiString befindesz sich dan im folgendne Array des Midi String
Status=MidiIn[0]
Note=MidiIn[1]
Velocity=MidiIn[2]

Was ist das "cIdx(Byte)"?
...
das dürfte jetzt dann klar sein...

Gruss

Rudi
;-)