I'm following application note AN75779 to stream the raw video data from OV7670. I'm connecting the FX3 to the host USB 3.0 port, which successfully recognized it as a USB composite device, I guess that's working alright.
However, since OV7670 does not support 1280*720 resolution, I'm modifying the VS frame descriptor CyFxUSBSSConfigDscr in cyfxuvcdscr.c, at 640*480@30fps. Another place I modified is uvc.c, the glProbeCtrl structure.
Also, the frame sync vsync signal output from OV7670 is active low, so I modified the GPIF II project and override the cyfxgpif2config.h file in the eclipse project.
After rebuilding the solution, I reflashed the FX3, AMCap successfully regonized the video resolution as 640*480, however, the whole video screen is all blank.
The UART debug console output prints UVC: Completed 0 frames and 0 buffers every one second.
Is there anything I'm missing in here? Do you have a working code sample for such?
Please check your dscr.c file again to make sure everything is correct. After that you could use oscilloscope to check if the image sensor outputs data and if FV/HV works fine.
The necessary changes to add a different resolution/frame rate is mentioned in the below link. Please make sure that you have followed the instructions.
The page is no more available. Can you please send a copy of the same or provide another link where i can find it?
You said that :
"Also, the frame sync vsync signal output from OV7670 is active low."
Did the active low really work? since no matter i choose active high or low, the result are the same
because of this, I have to change the sensor vsync polarity when i initiateing it.