Tengo un ratón con un interno CI: SPCP168A, después de haber leído sobre él, descubrí que es específicamente diseñado y programado para la funcionalidad de ratón. Estoy interesado en reprogramar el dispositivo para poder utilizar su "cámara" (160frame/s). ¿Mis preguntas son: puedo reprogramarlo, o es un OTP? ¿Alguien ha hecho algo similar?
Respuestas
¿Demasiados anuncios?Las especificaciones para este chip en particular (SPCP168A) no muestran ninguna explícito de serie/puerto SPI. Además, no hay ninguna indicación en la blogosfera, que este chip tiene cualquier campo de actualización de firmware de opciones. Así que es muy probable que se ejecuta a partir de una máscara de ROM.
Sin embargo, hay otros ratones ópticos en el mercado, que se basan en el original patentado Avago tecnología. El principal chip ADNS-2051 tiene una interfaz a una MCU, tanto algunos de serie, y la "cuadratura salidas". Hay algunos hack ejemplos de que el uso de este chip como 16x16 matriz de vídeo usando Arduino.
Ni siquiera estoy seguro de que el MCU dentro de que la IC es una memoria programable en todos – tal vez un par de bytes para establecer un custome Dispositivo USB y el ID de Proveedor, pero que probablemente es. (El resto sería ROM)
Estoy bastante seguro de que está diseñado específicamente de manera que calcula el movimiento relativo directamente desde la cámara de observación con el hardware, que es muy fácil de diseño en el hardware (y más difícil hacer lo suficientemente rápido en el software MCU).
Así que me temo que este no es el IC que estás buscando.
Pero no te preocupes, hay un poco más caro de ratones a los que vienen con grandes Mcu para conectar el sensor a la USB y de implementar la funcionalidad más compleja, y si yo fuera a buscar reprogramabilidad, entonces no. También, hay ya gente que demostró que se puede ejecutar software malicioso en un jugador del ratón.
He hecho esto antes para un proyecto de robótica escolar. El objetivo era utilizar la información de la posición del ratón para utilizar como sensor de posición de un robot.
Esto es lo que he encontrado:
1) Todos los ratones que yo había utilizado ASICS (Y apuesto a que todos lo hacen)
2) El ASIC que tenía información era un chino ratón y había una hoja de datos (en lugar de tratar de encontrar una hoja de datos para un ratón particular, he buscado en diferentes ratones para que yo pudiera encontrar una hoja de datos)
3) El ratón que tenía una hoja de datos para presentaban dos problemas
Los datos de regresar del ratón no era absoluto posición, pero un \$ \Delta x \Delta y \$ posición, era ruidoso y no es útil para la posición absoluta, pero útil para la velocidad o la aceleración.
Después de algunos ingeniería inversa, El ratón puede ser encuestados para encontrar los valores de la cámara. Sin embargo, esto sólo puede ser realizado en ~intervalos de 1 segundo. No es muy útil.