01-25-2018 06:18 PM
I was stuck in a display problem. My development kit is ZC706.
According to PCA9548A Product data sheet, ADV7511 Hardware Users Guide and ADV7511 Programming Guide, I want to configure I2C by writing master from PL like:
assign memory = 24'he80200;
assign memory = 24'h724110;
assign memory = 24'h724c04;
assign memory = 24'h724000;
Here are the first two configurations grabbed from ILA:
start i2c mux addr ack from mux data ack from mux stop
0 1110 1000 0 0000 0010 0 1
start adv7511 addr ACK data ACK data ACK stop
0 0111 0010 0 0100 0001 0 0001 0000 0 1
From ILA, I can see that there are always ACK after I write those bytes to I2C. The weird thing is LCD does not respond at all which means that ADV7511 does not work properly. Does anyone have any suggestion? Thanks in advance.
01-29-2018 03:21 AM
My problem is solved.
I ignored the rule "Both data and clock lines remain HIGH when the bus is not busy" on page 9 in PCA9548A produce data sheet and generate SCL like a clock even when no data is transferred. So I pull it high when the bus is not busy.