¿Cómo se conecta el módulo de cámara OV3640?

He querido hacer un proyecto con este módulo en mente y he encontrado algunos recursos (principalmente arducam) pero no tengo idea de cómo conectarlo a un microcontrolador.

Las hojas de datos muestran que tiene una conexión I2C pero también hay 9 cables de datos que parecen tener algún tipo de propósito.

Si alguien pudiera decirme o señalarme en la dirección correcta, sería muy feliz :)

Respuestas (2)

La interfaz i2C es solo para configurar los parámetros del sensor de imagen. Los datos de la imagen real se transmiten a través de la interfaz de cámara paralela (llamada CAMIF), que consta de un bus de datos paralelo de 8 a 12 bits, además de señales de sincronización horizontal y vertical y un reloj de píxeles. El reloj de píxeles tiende a funcionar a 50-100 MHz dependiendo de la resolución y la velocidad de fotogramas, por lo que su microcontrolador necesitará tener un módulo CAMIF de hardware para manejar el tiempo. Muchos procesadores Cortex-M4 y Cortex-A de gama alta de ST, Freescale y TI tienen el hardware necesario para esto. Obviamente, un FPGA/CPLD también podría realizar esta funcionalidad.

También necesitará un poco de memoria libre para almacenar los fotogramas que tome del sensor de imagen: una imagen de 2048 X 1536, en RGB888, requerirá ~9,6 megabytes.

Tipo: 2048*1536*3 = ~9 MB, RGB888 usa 24 bits o 3 bytes por píxel + algo de metainformación
Gracias, actualizado!

Esto no te ayudará mucho, pero recuerdo que miré ese sensor en particular hace aproximadamente un año y me desanimé bastante por la velocidad de los datos. Te arroja alrededor de 3 millones de píxeles a más de 50 MHz. No tenía idea de dónde poner esos datos o cómo mantenerme al día. Está en el área de usar un procesador FPGA o XMOS y una pila de RAM.

Habiendo mirado el proyecto Arducam que mencionas, veo que eso es exactamente lo que están haciendo. Si eso es lo que está preguntando: "cómo uso el módulo arducam con un microcontrolador", entonces la respuesta parece ser "con una interfaz SPI para los datos e I2C para el control". ¡Se ve muy bien en realidad!

Editar: sin mirarlo con demasiado detalle, asumo que Arduino se usa solo para control. Necesitarías una computadora real como una Raspberry Pi para hacer algo con esa cantidad de datos.