¿Cómo reduzco la cantidad de pines GPIO utilizados para una cámara CMOS?

0

Voy a hacer una cámara 360 barata con 5 de estas cámaras OV7670 ¡pero usan una increíble cantidad de 18 pines GPIO cada uno! (Por cierto, 18 X 5 = 90 pines). Estoy usando una computadora C.H.I.P para controlar todo este lío, pero incluso entonces, ¡solo tiene 80 pines GPIO! He visto una cámara que solo usa cuatro pines y la única razón por la que la compro es porque es muy barata. ¿Hay alguna forma de reducir la cantidad de pines que utiliza esta cámara?

    
pregunta Tacocat 4642

2 respuestas

1

Pasando por el pinout descrito aquí , lo haría Necesito 5x 8 líneas de datos, 2 líneas de configuración para cada cámara. Las señales de reloj y sincronización (4), más las señales de encendido / reinicio (2) podrían ser comunes a todos los dispositivos. Esto daría 56 señales totales requeridas, además de alimentación / tierra a cada uno de los dispositivos.

Sin embargo, no estoy seguro de que pueda recibir los 5 conjuntos de datos correctamente de los dispositivos mediante los pines GPIO.

    
respondido por el user2943160
0

No te has molestado en vincular una hoja de datos o un pinout, pero no veo cómo usan 24 pines GPIO.

Para empezar, es un conector de 18 pines, y la cámara probablemente usa dos pines para la alimentación, por lo que a lo sumo hay 16 pines por cámara.

En segundo lugar, es probable que haya una forma de evitar la conexión simultánea de los cinco pines: es probable que pueda salirse con un mux para varios pines, y probablemente haya una selección de chip o similar para poder unir varios pines de unidad.

Tendrá una frecuencia de actualización muy baja, pero probablemente estará limitado por el ancho de banda del GPIO C.H.I.P. de todos modos, así que espero que ya esté bien con eso.

Finalmente, Google sugiere que la cámara utiliza una interfaz paralela de 8 bits, por lo que si aún no tienes pines GPIO, puedes usar un registro de desplazamiento para serializar ese puerto. La deserialización en el otro extremo se deja como un ejercicio para el lector.

    
respondido por el uint128_t

Lea otras preguntas en las etiquetas