So, I've been battling with this sucker for a while now and my project is being stalled because of it. I've set up I2C using an Arduino, and jerryrigged to a Digilent NEXYS2 Board with the VDEC1 attached through the 50-pin Hirose connector.
The FPGA is simply set up as a port passthrough, and I've verified that it works as such. I've set PWRDN to HIGH, I've done a 1 second Reset cycle before I begin sending I2C commands, and I still only get a NACK when I begin transmission. I've changed the code to try 0x40 and 0x42, but neither of them work. I've reset the ALSB pin to both 0 and 1, and tried both addresses on each, and nothing.
What am I missing?
ADV7183B is an older product and is not recommended for new designs. I'm wondering if you might be able to use ADV7180 or ADV7181D instead.
I know the ADV7183 is an older product, but it's what we currently have available as a testbench. I do have the EVAL-ADV7180-32EBZ board, however, as there is no easy way to put an interface between the decoder and encoder chips, I'm working with what I have (trying to get the BT656 into an FPGA, for starters).
Since I'm assuming the adv7180 and the adv7183 chips operate on a similar I2C configuration scheme, any advice on the problem at hand, or should I just start working with the little eval board?
I'm currently passing the I2C signals through the FPGA, yes.
And a small 16-bit ATMEL chip is driving the I2C signals. I've verified that the I2C protocol works with another I2C device, but I'll be working on switching to an ADV7180 at the instruction of my supervisor ("I'd rather design things to the new chip...").
If I'm still having the issue, I'll let you know.
Are you trying to take the I2C signals through an FPGA?
Also, what device is acting as I2C master?
It's important to note that I2C requires bi-directional signaling, so unless your FPGA provides some type of analog switch functionality, it will not be able to simply pass the I2C signals through.