09-15-2019 05:07 AM
Hi,
I'm a fresh user trying to get acquainted with FPGA/ZYNQ programming. I wanted to translate the csi rx example project desgined for zcu102 to my zcu104.
In the xmipi_example program, i already changed the external clock generator to the 8T49N24 on zcu104 instead of the Si5324 on zcu102. And I can got the hdmi output and saw the colorbar produced by the program itself on the monitor.
However, i counldn't set up the imx274 camera sensor because the program stuck in sending data to the sensor through iic.
Sending data through iic didn't call the callback function and the transmitcomplete flag remained 1.
I have not made any changes to the program except using the 8T49N24 instead of the Si5324.
09-15-2019 03:00 PM
Hello @ivanfan
Could you please check your IIC clock and data lines on your board ?
Are they pull-up at "1" when there is no transaction occurs ?
Can you show me the oscilloscope waveform capture of your IIC lines ?
regards
Leo
09-17-2019 04:30 AM
Thank you for your reply.
I got the waveform from ila.
They pull-up at "1" all the time and didn't have any change when the transaction occured.
10-01-2019 08:32 AM
HI @ivanfan
You might want to add a trigger to your ILA on a falling edge. Else, if you just try to capture randomly, you will probably not see anything happening.
You might want to check my Video Series 31 – Debugging a Video System using an ILA for the basics of using an ILA.
Regards,
10-07-2019 01:53 AM
Hi @ivanfan
If your question is answered or your issue is solved, please kindly mark the response which helped as a solution (click on "Accept as solution" button below the reply).
If this is not solved/answered, please reply in the topic giving more information on your current status.
Thanks and Regards,
10-28-2019 01:04 AM - edited 10-28-2019 01:12 AM
I use the iic of ps instead and use the function XIicPs_MasterSendPolled() to send the data. I used pmod pins to output the iic signal. But XIicPs_MasterSendPolled() still return sending data fail.
I add a trigger to the ILA and can capture two types of waveform. It looks a bit strange. SDA stays 0 and does not change back to 1.
10-28-2019 06:27 AM - edited 10-28-2019 06:32 AM
If I use th pl's iic as the xmipi.c do, the waveforms are shown as follow:
And the program still stuck in the loop while ((TransmitComplete) || (XIic_IsIicBusy(&IicSensor) == TRUE)) {...}, and TransmitComplete always stays 1.
10-28-2019 09:46 AM
HI @ivanfan
Why are you using the EMIO (going through the PL) and not using the PS IIC interface?
As both are connected to the same, I am not sure how that will act.
10-28-2019 08:04 PM
I have tried to send the I2C signal through the I2C0 socket interface on the zcu102 board, but it also failed. I want to capture the waveform of the I2C signal so I use the EMIO instead and insert an ILA to it.
The IIC signal sent from I2C IP core seems to be corret. My judgment may be wrong. Are there any problem in the waveform of I2C I posted above?
Any help regarding the issue will be appreciated.
11-15-2019 07:07 AM
Hi @ivanfan
I guess there is also a switch for the iic bus. Is there a way you could probe to see if the data is going through the iic switch?
10-19-2020 04:47 AM
hi, I encounter the same problem with you ,have you solved this problem? if so, how to solve?