CS4281 Programming Manual
DS308PRM1
193
Confidential Draft
3/7/00
20.4
MIDI Port
In general, the MIDI port has two major roles. The
MIDI port provides a basic bi-directional external
MIDI interface for connection to “outside of the
box” musical instruments, and a general MIDI
port has non-UART mode wherein it responds to
commands with appropriate responses (although
no real work happens.) Most software just sends
the MPU-401 the commands to go into “UART”
mode and then sends MIDI data.
A hardware MPU-401 port (non-UART) mode
does not exist on the CS4281. Therefore, the MIDI
port is assumed to always be in “UART” mode
and does not accept commands to enter or exit
“UART” mode. Eliminating MPU-401 hardware
implies that real-mode DOS software expecting an
MPU-401 will not find one, ergo, the CS4281 does
not support real-mode DOS MPU-401. In
Windows, the MPU-401 can be coded into the
driver to provide full MPU-401 interface to other
software applications expecting an MPU-401
interface. Therefore, in Windows and a DOS box,
the MPU-401 support can be provided by
software.
20.4.1
MIDI Port Functional Description
The MPU-401 is an intelligent MIDI interface that
was introduced by Roland in 1984. Voyetra
Technologies subsequently introduced an IBM-PC
plug in card that incorporated the MPU-401
functionality. The MPU-401 has become the
defacto standard for controlling MIDI devices via
IBM-PC compatible personal computers.
Although the standard MPU-401 does have some
intelligence, the CS4281 implements the non-
MIDI Receive FIFO
MIDIIN
MIDIOUT
1
0
MIDCR.MLB
Shift Register
16 bytes
rx_clk
MIDRP[7:0]
tx_clk
Control and
Clock
Generation
MIDWP[7:0]
Addr[11:0] Data[31:0]
Transmit Interrupt
Receive Interrupt
ABITCLK
÷
393
÷
26
MIDCR.TXE
MIDCR.RXE
Shift Register
Q
Q
SET
CLR
D
Q
Q
SET
CLR
D
Q
Q
SET
CLR
D
Q
Q
SET
CLR
D
Start
Detector
Majority
Detector
÷15
Figure 53. MIDI UART Architecture
D
ra
ft
Содержание CS4281
Страница 8: ...Confidential Draft 3 7 00 CS4281 Programming Manual 8 DS308PRM1 D r a f t...
Страница 12: ...Confidential Draft 3 7 00 CS4281 Programming Manual 12 DS308PRM1 D r a f t...
Страница 24: ...Confidential Draft 3 7 00 CS4281 Programming Manual 24 DS308PRM1 D r a f t...
Страница 34: ...Confidential Draft 3 7 00 CS4281 Programming Manual 34 DS308PRM1 D r a f t...
Страница 44: ...Confidential Draft 3 7 00 CS4281 Programming Manual 44 DS308PRM1 D r a f t...
Страница 114: ...Confidential Draft 3 7 00 CS4281 Programming Manual 114 DS308PRM1 D r a f t...
Страница 192: ...Confidential Draft 3 7 00 CS4281 Programming Manual 192 DS308PRM1 D r a f t...