Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-13 06:58
Hace un tiempo cuando era pequeño tenia un teclado funcional que me encantaba tocarlo, aunque solo sabia poquitas notas me encantaba tocarlo, un dia le conecte el removedor Equivocado pero no me habia dado cuenta cuando lo conecte todo thiết lập một funciona yndo muy bien ap peague lo deje ahi conectado es cuando empezo a oler a quemado:(Cuando paso eso si me aguite: c
Pero bueno en ese tiempo no sabia nada de electronica asi que solo llore, tiempo khinh thường ya que me empeze a Featsar por la electronica me acorde de ese piano asi que lo abri y empeze a analizar la tarjeta logica que venia adentro pase mucho tiempo Ý địnhando arreglarlo, Idfique la falla en el circuito integrationdo major y un transistor de potencia, buscando bởi google me doy cuenta que el circuito integrationdo que es marca Yamaha es algo dificil de conseguir ademas de que es viejito y bueno eso no me aseguraba que quedara funcionando otra vez
Asi que decidi tomar las partes precisiones del teclado dañado (Carcasa y la matriz de las teclas) y hacer una nuevo ya que queria rescatar ese
En este Guiductables les contare como lo hize y algunos de los problemas que me encontre en el camino
Asi que partiremos suponiendo que tienes solamente la matriz del teclado ya desmontada
Quân nhu:
-Matriz de Teclado (La cantidad de teclas no importa)
En mi caso es de 49 teclas
-Arduino Mega
(Para Pracizar un Arduino Uno se necesitaria un shift register por que los pines no alcanzan lo cual tambien llevaria a cambiar el codigo)
-Hairless MIDI
-Loop MIDI
-Synthesia (O cualquier otro VST que acepte como entrada MIDI)
Bước 1: Identifica La Matriz Đệ Tử Teclado
Bueno en mi caso este teclado tiene un cable de 15 cây thông
¿Que hize yo para Idificar la matriz de este teclado?
Lo que yo hice fue
1.-Colocar el multimetro en continueidad con un caiman en una orilla del cable que viene del teclado (Cáp 1) y otro caiman en la otra orilla (Cáp 15)
De la parte de atras de mi teclado veo que tiene 49 diodos zener lo que Nghiaa que cada tecla tiene un diodo zener asignado y por lo tanto al momento de probar continueidad con el multimetro solo funcionara en un sentido
en mi caso puse la punta roja en el cable 15 y la punta negra en el cable 1
En tu caso puede cambiar es cosa de probar
2.-Presionar todas las teclas y ver cual da Continidad
3.-Anotarlo
4.-Cambiar una de los dos caimanes, yo cambie el del cable 1 al cable 2 por que el cable 15 tiene una rayita lo cual me hace entender que es comun
Repetir el proceso hasta conseguir la relacion entre los cable o hasta ver una secuencia
En mi caso documente hasta la decima prueba, en la novena todavia me daba Continidad con alguna tecla, en la decima prueba ya no daba con ninguna esto me indica que es una matriz 9x6 o 6x9
Bước 2: Anotaciones
Bước 3: Matriz Identificada
Despues de Idificar todos los cáp llegue a la kết luận
Cáp 15-10 - Roja (Đấu trường)
Cáp 9-1 - Negra (Filas)
Cáp Siendo la punta que coloque en el
Bước 4: Identifica El Diagrama Interno De La Matriz Del Teclado
En la foto vemos un Diagrama de una matriz de switch de 3x4, he defminado que asi es como esta internamente mi teclado bởi que yo ponia la punta roja del multimetro en la parte de la columna (Cáp 15)
y la punta negra en la parte de la fila lo que hacia que el diodo se polarizara directamente y heliera
Es bởi eso que si colocaba las puntas al revés no teniaosystemidad en ninguna tecla
En mi caso es de 9x6
9 Filas
6 đấu trường
La Resistencia de la parte de hasta arriba es la configuracion pull up y se aplica a la parte de las columnas
Bendito Arduino tiene una funcion para establecer un pin como PULL UP bởi lo cual no hay que preocuparse por esa parte
Bước 5: Circuito
Utilizando un Arduino Mega y los pines digitales
Chân 22-Cáp 15
Chân 23-Cáp 14
Chân 24-Cáp 13
Chân 25-Cáp 12
Chân 26-Cáp 11
Chân 27-Cáp 10
Chân 28-Cáp 9
Chân 29-Cáp 8
Pin 30-Cáp 7
Chân 31-Cáp 6
Chân 32-Cáp 5
Chân 33-Cáp 4
Pin 34-Cáp 3
Pin 35-Cáp 2
Pin 36-Cáp 1
Cáp 15-10 con trai Columnas
Cáp 9-1 con trai Filas
Bước 6: Codigo
Links utiles bởi si quieres saber mas como funciona el codigo
www.gammon.com.au/forum/?id=14175
www.arduino.cc/reference/en/libraries/midi…
Librerias necesarias.
github.com/nickgammon/Keypad_Matrix
github.com/FortySevenEffects/arduino_midi_…
Các chương trình Necesarios
projectgus.github.io/hairless-midiserial/
www.tobias-erichsen.de/software/loopmidi.ht…
Codigo
Bước 7: Cấu hình chương trình Los
Una vez teniendo todo instalado y el programma cargado al arduino mega para saber si funciona vamos a configurar los programas instalados
1.- Vòng MIDI
Descargamos el programma lo extraemos, lo abrimos una vez dentro colocamos un nombre en la parte de abajo y damos en mas
Esto nos generara un puerto MIDI
2.-MIDI không có lông
Una vez descargado, instalado y abierto
-Seleccionamos el puerto del arduino deberia de aparecer como COMx
-Activamos la opcion de gỡ lỗi thông báo MIDI (Para saber que numro de tecla estamos tocando)
-Para probar que si funciona seleccionamos en MIDI TRONG Microsoft Wavetable Synth
Una vez comprobado que funciona entonces se puede cambiar el MIDI IN y MIDI OUT al puerto creado en loopMIDI para usarlo en el programma que desees
-Despues vamos a la parte de
Tệp - Tùy chọn
Y cambiamos el baud rate a 9600
-Activamos el SERIAL - CẦU MIDI
Probamos
Si por casualidad tu teclado tiene la misma configuracion de matriz que la mia entonces tu teclado debe estar funcionando correctamente
Bước 8: Como Cambiar Las Notas
En caso de que la configuracion de matriz sea diferente pero si da las notas entonces puede ser que la configuracion no sea la misma en ese caso xu hướng que cambiar en el codigo de arduino la tecla que tương ứng
Primero Idifica que tecla da que numro de nota para khinh cambiarla en el codigo de arduino
Ejemplo presionas la primera tecla de derecha a izquierda y da la nota 43
Entonces buscas en el codigo de arduino el numro 43 en la primera parte y lo cambias por la nota que Corree dependiendo del siguiente codigo MIDI
usermanuals.finalemusic.com/Finale2012Win/Content/Finale/MIDI_Note_to_Pitch_Table.htm
Yo sử dụng desde la primera octava hasta la tạa octava