Deseo controlar un teléfono celular clásico usando un Arduino Nano conectando las teclas del teléfono celular a los pines digitales y cambiarlos usando un programa que instalaré en el Arduino. La idea es hacer un escudo pseudo-GSM, y poder por ejemplo enviar mensajes SMS, hacer una llamada, o simplemente imprimir un texto en la pantalla LCD del celular.
Los 2 problemas que encontré:
Pregunta: ¿Hay una forma más inteligente de encender/apagar las teclas usando solo unos pocos componentes (porque en mi caso usaré 25 transistores y son muchos)? ¿Y debo usar la misma fuente de alimentación para Arduino Nano y el teléfono celular?
Si hacemos una serie de suposiciones, podemos describir cómo usar un Arduino Nano para controlar el teclado de un teléfono celular sin o con un mínimo de hardware adicional. Si encuentra que las suposiciones no son válidas, tendrá que trabajar un poco para encontrar una solución. Una forma estándar de diseñar un teclado es colocar interruptores en una rejilla de alambre de manera que cortocircuiten un cable de "fila" con un cable de "columna". La forma más eficiente de organizar los interruptores es en una cuadrícula (lo más cercana posible) cuadrada. Por lo tanto, asumimos que se utiliza una cuadrícula de 5 por 5 para 25 conmutadores. Además, asumimos que las filas están "escaneadas" y la columna está "detectada" y que el voltaje lógico es compatible con el Arduino Nano. Finalmente, asumimos que el teléfono escaneará los interruptores mucho más lento que el Arduino, de modo que podamos detectar un cambio de voltaje de fila y, a su vez, Impulse el voltaje de la columna lo suficientemente rápido como para emular una pulsación de botón. Si todas estas suposiciones son ciertas, entonces necesitamos configurar 5 pines Arduino Nano como entradas. Uno para cada fila. Y 5 pines Arduino Nano como salida. Uno para cada columna. Para activar un interruptor falso, esperamos hasta que se active la fila que contiene el interruptor falso. Luego activamos la columna activa que contiene el interruptor falso. Hay muchos más detalles en los que tendrá que trabajar. Por ejemplo, es probable que el teléfono intente bloquear el cierre del interruptor. Por lo tanto, es probable que un interruptor falso deba permanecer cerrado durante muchos ciclos del escaneo del teclado. Para activar un interruptor falso, esperamos hasta que se active la fila que contiene el interruptor falso. Luego activamos la columna activa que contiene el interruptor falso. Hay muchos más detalles en los que tendrá que trabajar. Por ejemplo, es probable que el teléfono intente bloquear el cierre del interruptor. Por lo tanto, es probable que un interruptor falso deba permanecer cerrado durante muchos ciclos del escaneo del teclado. Para activar un interruptor falso, esperamos hasta que se active la fila que contiene el interruptor falso. Luego activamos la columna activa que contiene el interruptor falso. Hay muchos más detalles en los que tendrá que trabajar. Por ejemplo, es probable que el teléfono intente bloquear el cierre del interruptor. Por lo tanto, es probable que un interruptor falso deba permanecer cerrado durante muchos ciclos del escaneo del teclado.
Consideraría usar el expansor de puerto Microchip MCP23017 I2C. Contiene 16 pines GPIO además de 2 pines de interrupción.
Notas:
Podría usar solo cinco pines para controlar todo usando un demultiplexor de [[CINCO]] bits. Es posible que aún necesite los transistores dependiendo de cómo funcione el teclado, pero debe ver cómo está cableado el teclado, y es muy probable que pueda usar solo unos pocos pines y aplicar voltaje al cable de datos del teclado. Pensándolo bien, es posible que no necesite transistores si alimenta el teléfono celular con la misma fuente de alimentación que usa el arduino, solo asegúrese de no sobrecargar el teléfono si usa una lógica de 3.3V. Si es así, es posible que necesite un convertidor de nivel lógico. (Perdón por el conteo de bits incorrecto, hice mal mis cálculos: / Gracias por señalar eso).
Mahendra Gunawardena
Pedro Quadrós
bimpelrekkie
mha
mha
mha
chris stratton