A nadie le interesa esto!?
Bueno, puede que en el futuro aparezca alguien... de ser así, les cuento que ya logré enviar mensajes midi. Actualmente estoy enviando las notas: 0X24, 0X26, 0X2E, 0X30, 0X2F, 0X2D, 0X31 y 0X33, correspondientes a bombo, caja, hihat, 3 toms, crash y ride.
Por ahora necesito algo de ayuda: alguien tiene algún código o sabe como funciona el velocity sensitive?
Espero me puedan ayudar.
Salu2!
ps:
Para enviar midi usé el siguiente código:
BSF STATUS, RP0 ;BANK 1
BCF TRISC,6 ;SE HABILITA PIN COMO SALIDA TX
MOVLW 0X09 ;SET BAUD RATE
MOVWF SPBRG
BSF TXSTA,TXEN ;SE HABILITA TRANSMISION
BCF TXSTA,SYNC ;SE HABILITA PUERTO SERIAL
BCF STATUS, RP0 ;BANK 0
BSF RCSTA,SPEN ;SE HABILITA PUERTO SERIAL
NOTE_ON
MOVLW 0X99 ;NOTE ON
CALL TX ;SE TRANSMITE NOTE ON
;NOTE
BCF STATUS, RP0 ;BANK 0
MOVF TONO,W ;NOTA
CALL TX ;SE TRANSMITE NOTA
;VELOCITY
MOVLW 0X7F ;INTENSIDAD
CALL TX ;SE TRANSMITE INTENSIDAD
RETURN
;TRANSMISION
TX BCF STATUS, RP0 ;BANK 0
BTFSS PIR1,4 ;SE ESPERA FLAG PARA CARGAR DATO EN TXREG
GOTO $-1
MOVWF TXREG
BSF STATUS, RP0 ;BANK 1
BTFSS TXSTA,TRMT ;SE ESPERA FLAG DE FIN DE TRANSMISION
GOTO $-1
RETURN ;SE VUELVE A TRANSMITIR
El resto es llamar las funciones al apretar los botones.