News:

Let's find out together what makes a PIC Tick!

Main Menu

confusing I2C address

Started by Yves, Oct 09, 2023, 09:56 AM

Previous topic - Next topic

Yves

Hello all,
I have a MCP3421 18bit ADC chip. On the minuscule chip it is written CA6E I looking at the pdf I get 110 so using LES driver I set the address to $define cMCP34_SlaveAddress %11011100 (first 1101 is for the MCP3421 and the last 0 is the write bit. But it doesn't work and looking at the oscilloscope and the serial results I get a ack of 1 meaning wrong call. Scanning the chip address the chip works perfectly with $define cMCP34_SlaveAddress %11010000 which mean CA0 (000). How is it possible or I'm missing something?

Cheers,

Yves 
Yves

tumbleweed

Looking at the datasheet section 8.1, 'CAxx' indicates address option A0 (000), so the device address would be 1101 000 0, which is what you observe. 'CA' is the address option, 'xx' is a date/tracability code.
 

Yves

But my physical chip has clearly written on it CA6E which is %110 but it runs only at %000. I'm not dreaming. I never thought at the typo possibility on a chip.

Cheers
Yves
Yves

RGV250

Hi,
As Tumbleweed said, CANN is for A0(000). For A6(110) it would need CGNN as the code.

Bob

Yves

ok thank you. The pdf couldn't be more confusing.

Cheers,

Yves
Yves

top204

#5
An I2C address is usually confusing in a datasheet, because they give a value that does not represent the shift left that has to be done for the R/W bit. They usually give a value that represents its LSB as bit-0, instead of bit-1. And sometimes, they actually give a value that does not take any address bits into account, so the value actually starts at bit-X, not bit-0 or bit-1!