Author Topic: Omnivision - setting up the PLLs, clocks, registers  (Read 621 times)

0 Members and 1 Guest are viewing this topic.

Offline broncobilliTopic starter

  • Newbie
  • Posts: 1
  • Country: us
Omnivision - setting up the PLLs, clocks, registers
« on: September 14, 2020, 02:50:25 am »
Ungh. I am at my wit's end... I've been handed a project started by another, with an OV4689 chip on it, and custom hardware, and I need to figure out why the firmware is wrong.

I'm trying to understand why the registers on both the OV chip, and the Cypress CX3 chip are set up close, but not exact, and the camera freezes up once in a while. Frequently. I'm sure this is mainly a CX3 DMA issue w/ the way it was set up, but when I went in to review the OV chip settings, I was perplexed. Let's say stupefied. Can't figure out what the clocks on the OV4689 do, and why there are so many of them, and how they work.

SCLK
MIPI_PCLK
MIPI_PHYS
DAC_CLK
PCLK period

Plus, I am fiddling with the registers, and can't figure out why the WIN_X_OFFSET and WIN_Y_OFFSET need to be non-zero. They describe some kind of windowing function on the sensor, and if I set them to zero, the sensor won't give me images any longer. Does ARRAY_X_START/END and ARRAY_Y_START/END have to contain a width/height that is slightly bigger than the image size that I want to transfer? Is this "just a thing"?

Anybody else out there document this stuff, or is a guru on it and will answer a few questions?

thanks!
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf