Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
16 years ago

SDA line always low (Opencores I2C)

Hi,

I'm working on "OpenCores I2C" with µClinux on the DBM_3C40 devboard.

As indicated in the i2c_specs.pdf from Richard Herveille, I pulled-up the both lines SDA and SCL to VCC by external resistors (4.7k).

When I scope the SDA and SCL lines with a working system on the FPGA :

- line SCL is always high and I can observe some I2C sequences (adress+R/W+ack)

- line SDA is always low whereas in the "opencores_i2c.v" source file there are some lines about tri-state :

assign sda_pad_i = sda_pad_io;

assign sda_pad_io = sda_padoen_o ? 1'bz : sda_pad_o;

which means line SDA must always be high when not used...

Thanks for your help !

1 Reply

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    HI..Did you get why that was happening becoz i m facing a similar situation ..even though my whole code runs to last and access happens..my sda line is low at last due to which my next access is going wrong. I m not able to get why this is happening. I have pullups on both the lines and code is also working for others.