image sensor interface to fx2lp

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
gean_3054931
Level 5
Level 5
10 likes given 5 likes given First like received

Hello,

I have interfaced image sensor to fx2lp in slavefifo mode and for this,i have modified control center to display the image in the pc side.image sensor is 752x480 resolution with 60 frames per second.what ever the image frame is displaying in the pc is shifting,that means first frame(partial) is displaying with second frame(partial) in the dispaly.

why it is happening?is it because of data loss?fx2lp and windows are not in sync?how can i solve this problem?i have attached the image display.

help me.horiz.bmp

0 Likes
1 Solution

Hello Geethanjali,

The data is read from the device by the host application using the XferData() API. This API stores the data onto a buffer. Kindly, implement the comparison on the data received on the buffer.

Best regards,

Srinath S

View solution in original post

10 Replies
Anonymous
Not applicable

Hi,

Can you please compare the frame which is sent into PC and the frame which is displayed on the app?

1) Use a protocol analyzer like USBLyzer and get the data of one single frame

2) Get the data of one single frame as seen by the host application, right before it is sent for display

Compare the two data. If they are same, then the problem is not with the PC/App side. It could be with the image sensor / fpga / fx2lp.

If not, the issue is with the host application code.

Regards,

- Madhu

Hi sir,

we dont have USBLyzer,any other debug process.

thanks for your replay.

regards,

geethanjali.

0 Likes
Anonymous
Not applicable

USBLyzer is a software analyzer. You don't need any other hardware. Download it from here:

Download USBlyzer, USB Sniffer and Data Analyzer Software

Hi Madhu,

THANK YOU.

0 Likes

Hi madhu,

Compare the two data. If they are same, then the problem is not with the PC/App side. It could be with the image sensor / fpga / fx2lp.

If not, the issue is with the host application code.

-->two data are different,see the usbanalyser screenshot,what whould be control center problem?

image sensor is 752x480 resoltion ,60 frames per second.For every transaction,i am getting 360960bytes.

How can i solve this?

regards,

geethanjali.

0 Likes

Capture.PNG

0 Likes

Hello Geethanjali,

The start of a new frame has to be identified by the host application. This can be done by generating a known byte header pattern in the FX2LP firmware and looking for the same in the host application.

Best regards,

Srinath S

Hello,

we are implemented header pattern in both host application and fx2lp.we are adding a known 8 bytes of data when frame valid goes low,same 8 bytes are recieving in the host application.between these successive headers there is a 360960+512 bytes.360960 bytes are complete one frame according to image sensor datasheet.but when i look into the one frame,frame is splitted as shown in the image file.

what would be the reason?

regards,

geethanjali.iii.bmp

0 Likes

Hello,

The start of a new frame has to be identified by the host application. This can be done by generating a known byte header pattern in the FX2LP firmware and looking for the same in the host application.

->

we are added 8 bytes of data,that is header in the fx2lp and this is confirmed with default control center.but we are unable to looking for this header in the control center host application.where i can get this string in the host control center application?how can i compare this header in the host side code?can anyone tell me the where should look into the code?

regards,

geethanjali.

0 Likes

Hello Geethanjali,

The data is read from the device by the host application using the XferData() API. This API stores the data onto a buffer. Kindly, implement the comparison on the data received on the buffer.

Best regards,

Srinath S