When attempting to construct a miniature laser beam profiler with the Omnivision OV7740 CMOS detector and an Arduino Due, I am running into some problems with FIFO reading/writing. From the datasheet, it appears I can only set a FIFO speed, toggle a FIFO valid mode, toggle a FIFO manual mode, or set a FIFO delay. The chip uses the SCCB for communication, which I understand to be very similar to I2C.
From my previous understanding of FIFO memory operation, there should be pins associated with enabling write and a FIFO output buffer clock. To take an image one should enable FIFO writing, read pixel bytes from the output pins, and pulse the output buffer clock to obtain the next byte. After the image is taken, the memory can then be cleared by powering down.
Am I understanding the operation of FIFO memory correctly? What strategies can I take for reading image data from the FIFO to the microcontroller with this setup?