Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Hace un time when era small tenia un teclado functional that me encantaba tocarlo, aunque solo sabia poquitas notas me encantaba touchlo, un dia le conține eliminatorul echivocat dar nu mă avea dat când a conținut tot ceea ce funcționează foarte bine dar când apague y 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 care solo llore, tiempo despues ya que me empeze a interesar por la electronica me acorde de ese piano asi care lo abri y empeze a analiza cardul logică că venia adentro pase much time intentando arreglarlo, identifique la falla en el circuito integrado principal y un transistor de potencia, buscando por google me doy cuenta que el circuito integrado 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 care decide să ia părțile principale ale teclatului dat (Carcasa și matrizul teclelor) și să faci unul nou ya că vrei să rescari acest lucru
En este Instructables les contare as lo hize y some of the problems that me encontre en el camino
Asi that partiremos suponiendo that tienes solamente la matriz del teclado ya desmontada
Provizii:
-Matriz de Teclado (Cantitatea de teclas nu este importată)
En mi caso es de 49 teclas
-Arduino Mega
(Pentru a folosi un Arduino Uno este necesar un shift register pentru ca pinii să nu atingă ceea ce se poate duce la schimbarea codului)
-Midi fără păr
-Loop MIDI
-Synthesia (O orice alt VST care acceptă ca intrare MIDI)
Pasul 1: Identificați Matricea De Tastatură
Bueno en mi caso este teclado are un cablu de 15 pini
¿Que hize yo para identificar la matriz de este teclado?
Lo que yo hice fue
1.-Colocar multimetro în continuitate cu un caiman într-o orilă a cablului care vine del teclado (Cable 1) și alt caiman în alta orilă (Cable 15)
De la parte de atras de mi teclado veo que tiene 49 diodos zener lo que significa que cada tecla tiene un diodo zener asignado y por lo tanto al momento de probar continuidad cu el multimetro solo funcționează într-un sens
en mi caso puse la punta roja en el cable 15 y la punta negra en el cable 1
În cazul tău poate schimba ceea ce este de probă
2.-Presionați toate teclasele și ver calitatea continuității
3.-Anotarlo
4.-Cambiar uno de los dos caimanes, yo cambie el del cable 1 al cable 2 por that the cable 15 tiene una rayita lo cual me hace entender that es comun
Repetați procesul până la obținerea legăturii între cabluri sau până la o secvență
En mi caso documente hasta la decima prueba, en la novena todavia me daba continuidad con alguna tecla, en la decima prueba ya no daba con ninguna esto me indica que es una matriz 9x6 o 6x9
Pasul 2: Anotări
Pasul 3: Matriz Identificada
Despues de identificar all the cables llegue to the conclusion
Cablu 15-10 - Roja (Columnas)
Cablu 9-1 - Negra (Filas)
Siendo la punta que coloque en el cable
Step 4: Identifica El Diagrama Interno De La Matriz Del Teclado
În foto vom avea o diagramă de o matriz de switch-uri de 3x4, el a determinat că așa este așa cum este intern mi-a fost tastat pe care să-l pun la punta roșie a multimetrului în partea de coloană (Cable 15)
y la punta negra en la parte de la fila lo que hacia que el diodo se polarizara direct și conducerea
Es por eso que si colocaba las puntas al revés no tenia continuidad en ninguna tecla
En mi caso es de 9x6
9 Filas
6 Coloane
La resistencia de la parte de hasta arriba es la configuracion pull up y se aplica la parte de las columnas
Bendito Arduino are o funcție pentru a stabili un pin ca PULL UP pentru ceea ce nu există care să fie preocupat de această parte
Pasul 5: Circuito
Utilizând un Arduino Mega y los pines digitales
Pinul 22-Cablu 15
Pinul 23-cablu 14
Pin 24-cablu 13
Pin 25-cablu 12
Pinul 26-cablu 11
Pinul 27-cablu 10
Pinul 28-cablu 9
Pinul 29-cablu 8
Pin 30-cablu 7
Pin 31-cablu 6
Pin 32-cablu 5
Pin 33-cablu 4
Pin 34-cablu 3
Pin 35-cablu 2
Pin 36-cablu 1
Cablu 15-10 son Columnas
Cablu 9-1 son Filas
Pasul 6: Codigo
Links utiles por si quieres saber mas as works 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_…
Programas Necesarios
projectgus.github.io/hairless-midiserial/
www.tobias-erichsen.de/software/loopmidi.ht…
Codigo
Pasul 7: Configurarea programelor
O dată când trebuie totul instalat și programul cargado al arduino mega pentru saber și funcționează pentru configurarea programelor instalate
1.- Buclă MIDI
Descargamos el programa 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 fără păr
Una vez descargado, instalado y abierto
-Seleccionamos el puerto del arduino deberia de aparecer como COMx
-Activamos la opțiunea de depanare a mesajelor MIDI (Pentru a ști că numărul de tastă ne aflăm)
-Para probă că și funcționează selectate în MIDI IN Microsoft Wavetable Synth
O dată comprobat care funcționează atunci se poate schimba MIDI IN și MIDI OUT în portul creat în loopMIDI pentru a folosi în programul pe care îl doresc
-Despues vamos a la parte de
Fișier - Preferințe
Y cambiamos el baud rate a 9600
-Activamos el SERIAL - MIDI BRIDGE
Probamos
Dacă pentru casualitate tu tastatură are aceeași configurație de matriz pe care atunci mia tastatură trebuie să funcționeze corect
Pasul 8: Como Cambiar Las Notas
În cazul de care configurația de matriz sea diferit, dar dacă nu se poate atunci poate fi configurarea no sea la același în acest caz, tendințe care se schimbă în codul de arduino la tastă care să corespundă
Primero identifica că tecla da că numărul de note pentru a schimba în codul de arduino
Ejemplo presionas la primera tecla de derecha a leftda y da la nota 43
Entonces buscas en el codigo de arduino el numero 43 en la prima parte și lo cambias por la nota que corresponde dependiendo del siguiente codigo MIDI
usermanuals.finalemusic.com/Finale2012Win/Content/Finale/MIDI_Note_to_Pitch_Table.htm
Yo utilize de la prima octava până la cea de-a cincea octava