9. Implementación MIDI
1. Datos recibidos
■Mensajes Channel Voice
● Note off
Estado
2º byte
3r byte
8nH
kkH
vvH
n = número de canal MIDI:
0H~FH (Canales 1~16)
kk = número de nota:
00H~7FH (0~127)
vv = velocidad de nota
00H~7FH (0~127)
desactivada:
● Note on
Estado
2º byte
3r byte
9nH
kkH
vvH
n = número de canal MIDI:
0H~FH (Canales 1~16)
kk = número de nota:
00H~7FH (0~127)
vv = velocidad de nota activada:
01H~7FH (1~127)
● Control Change
• El valor especificado por un mensaje Control Change no se reajusta con un
Program Change, etc.
❍Bank Select (Controlador número 0, 32)
Estado
2º byte
3r byte
BnH
00H
mmH
BnH
20H
llH
n = número de canal MIDI:
0H~FH (Canales 1~16)
mm = MSB del número de
00H~7FH
banco:
ll = LSB del número de banco:
00H~7FH
• Sólo para bajos cromáticos.
❍Expression (Controlador número 11)
Estado
2º byte
3r byte
BnH
0BH
vvH
n = número de canal MIDI:
0H~FH (Canales 1~16)
vv = Expresión:
00H~7FH (0~127)
• Esto ajusta el volumen de una parte. Se puede utilizar independientemente desde
mensajes Volume (CC07). Los mensajes Expression se utilizan para la expresión
musical en una interpretación; por ejemplo desplazamientos del pedal de
expresión, crescendo y decrescendo.
❍Hold 1 (Controlador número 64)
Estado
2º byte
3r byte
BnH
40H
vvH
n = número de canal MIDI:
0H~FH (Canales 1~16)
vv = Valor de control:
00H~7FH (0~127)
00H~63H= Off/64H~7FH= On
❍Program Change
Estado
2º byte
CnH
ppH
n = número de canal MIDI:
0H~FH (Canales 1~16)
pp = Número de programa:
00H~0DH: Registros de agudos 1~14
00H~15H: Registros de orquesta 1~22
00H~06H: Bass/FreeBass/Orch.Bass/Orch
Chord, Orch Free Bass Register 1~7
00H~27H: Set 1~40
❍Channel Pressure
Estado
2º byte
DnH
vvH
n = número de canal MIDI:
0H~FH (Canales 1~16)
vv = Presión del canal:
00H~7FH (0~127)
■Mensajes System Realtime
❍Active Sensing
Estado
FEH
• Cuando se recibe Active Sensing, el FR-7/FR-5 empieza a monitorizar los
intervalos de todos los mensajes posteriores. Mientras monitoriza, si el intervalo
entre mensajes excede los 420 ms, se ejecutará el mismo proceso que al recibir
All Sounds Off, All Notes Off y Reset All Controllers, y la monitorización del
intervalo entre mensajes será interrumpida.
❍Start
Estado
FAH
• Cuando se recibe un mensaje FA de un dispositivo MIDI externo como por
ejemplo un secuenciador, el FR-7/FR-5 envía toda la información MIDI necesaria
para configurar la cabecera de una canción: Configuración de los sonidos Treble,
Orchestra, Bass/Free, Orchestra Bass.
■Mensajes System Exclusive
Estado
Byte de datos
Estado
F0H
iiH, ddH, ......,eeH
F7H
F0H:
Estado del mensaje System Exclusive
ii = Número ID
Un número ID (ID del fabricante) para indicar el fabricante al
que pertenece este mensaje Exclusive. La ID original de
Roland es 41H.
dd,...,ee =
00H~7FH (0~127)
datos:
F7H:
EOX (Fin de exclusivo)
Los mensajes System Exclusive recibidos por el FR-7/FR-5 son mensajes
relacionados con grupos de datos, Data Set (DT).
● Data Set 1 DT1 (12H)
Estado
Byte de datos
F0H
41H, dev, 42H, 12H, aaH, bbH, ccH, ddH, ... eeH,
ffH, sum
Byte
Explicación
F0H
Estado de Exclusive
41H
Número ID (Roland)
10H
ID de dispositivo
00H
Modelo ID #1 (FR-7/FR-5 V-Accordion)
7CH
Modelo ID #2 (FR-7/FR-5 V-Accordion)
12H
ID de comando (DT)
aaH
MSB de dirección: byte superior de la dirección inicial
de los datos a enviar
bbH
Dirección: byte de la mitad superior de la dirección
inicial de los datos a enviar
ccH
Dirección: byte de la mitad inferior de la dirección
inicial de los datos a enviar
ddH
LSB de dirección: byte inferior de la dirección inicial
de los datos a enviar
eeH
Datos: los datos a enviar. Múltiples bytes de datos se
transmiten por orden empezando por la dirección.
::
::
ffH
Data
suma
Suma de comprobación
F7H
EOX (Fin de exclusivo)
• La cantidad de datos que se pueden recibir al mismo tiempo dependerá del tipo
de datos, y los datos se transmitirán a partir del tamaño y la dirección
especificados.
• Los datos mayores de 256 bytes deben dividirse en paquetes de 256 bytes o
menos, y cada paquete debe ser enviado en intervalos de 20ms.
2. Datos transmitidos
■Mensajes Channel Voice
● Note off
Estado
2º byte
3r byte
8nH
kkH
vvH
n = número de canal MIDI:
0H~FH (Canales 1~16)
kk = número de nota:
00H~7FH (0~127)
vv = velocidad de nota
00H~7FH (0~127)
desactivada:
● Note on
Estado
2º byte
3r byte
9nH
kkH
vvH
n = número de canal MIDI:
0H~FH (Canales 1~16)
kk = número de nota:
00H~7FH (0~127)
vv = velocidad de nota activada:
01H~7FH (1~127)
● Control Change
❍Bank Select (Controlador número 0, 32)
Estado
2º byte
3r byte
BnH
00H
mmH
BnH
20H
llH
n = número de canal MIDI:
0H~FH (Canales 1~16)
mm = MSB del número de
00H~7FH
banco:
ll = LSB del número de banco:
00H~7FH
❍Volume (Controlador número7)
Estado
2º byte
3r byte
BnH
07H
vvH
n = número de canal MIDI:
0H~FH (Canales 1~16)
vv = Volumen:
00H~7FH (0~127), Valor inicial = 64FH (100)
• Volume messages are used to adjust the volume balance of each Part.
r
V-Accordion
Implementación MIDI
Estado
F7H
105