Center for New Music and Audio Technologies |
Next: Performance Issues
Up: MIDI for Gesture Communication
Previous: Implementation
A MIDI Interface
In order to use the design in a musical performance environment two
extensions become necessary. First, the incoming MIDI signal has to be
transformed from a 1.5mA current into the appropriate voltage for the
chosen FPGA device and vice versa for the outgoing MIDI data. Clearly,
a circuit separate from the FPGA is needed.
Figure 1.3:
MIDI Hardware for sending and receiving MIDI data [3]
|
Figure 1.3 illustrates a circuit for the
transformation from a current loop into a voltage circuit as proposed
by the MMA (MIDI Manufacturer's Association) [4]. The
optocoupler ( 6N138) in the MIDI_IN section takes care of this
task and at the same time isolates the receiver from the transmitter
galvanically. Second, the sending of the MIDI data requires the
correct format as described in section 1.2. For
this, an additional component MIDI P2S becomes necessary which
extends the MIDI Synchronizer to a MIDI loopback device or
MIDI Interface. The tasks for this component are to derive the
MIDI clock from the masterclock, to add the start and stop bits and
finally, to send out the MIDI messages serially LSB first. The
extension as implemented is basically a loadable serial-out shift
register, which is enabled as soon as the data_valid signal of
the design MIDI Synchronizer is set to high. Clearly,
components accessing the MIDI data from design MIDI
Synchronizer have to provide a signal similar to
data_valid. The inputs of LSB and MSB of this
register1.2 can be
hardwired and as data_valid goes to low the shift register
sends out its content LSB first. The hardwired stop bit automatically
propagates through the register as the data is sent out and as a side
effect logic high appears after the entire message has left the
design.
Next: Performance Issues
Up: MIDI for Gesture Communication
Previous: Implementation
Home
Norbert Lindlbauer
2000-01-19