Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How to allocate the address of slave in I2C spec?

Not open for further replies.


Junior Member level 1
Jul 19, 2002
Reaction score
Trophy points
Activity points
Pls give me the answer. Thanks! :D

Please be more explicit. Which IC are you taking about?

i2c address of slave chip

The slaves are hard-wired. Most of the i2c chips like eeproms, etc., allow you to modify one or two bits of the address, depending I believe more on the pins available on the chip package rather than for any other reason. So, if you're using a chip with built-in i2c, look at its specification and it will tell you the possible addresses it can have. If you're doing a software i2c slave, choose an address yourself, respecting that there can only be one slave at each address, and respecting the limitations on address of any other chips on the bus.

You dont normaly have addresses on I2C, you have chip select lines?

I have never see a I2c chips with a chip select. :?

A software address is use to access the chip and like barny wrote on some chips one or more lines can be be connected to gnd to change the address. This allow to use more than 1 chips of the same type on the same bus and select the component to read/write.


No chip select in I2C devices.

In you own system, You can assign any address to THE DEVICE designed by yourself, as long as the ADDRESS is unique.

If you want to produce the DEVICE, then you have to get an address from Philips.

Hope it helps



The chip has got three lines 1010, A0 ,A1 ,A2 R/W ,hardwire A0,A1,A2
to get the address you require Simple :wink: ,It depends from chip ti chip
you may find only A0 for example in some chips followed by page addresses ,


I2C addressing

There are no chip selects on the I2C bus. Each device requires a unique address. Addresses are defined from an internal "base address" and usually (but not always) a few external pins to select the low order address bits (ie, A2, A1, A0). Some devices may take too much of the address space, such as certain EEPROMs, and may not have externally selectable low order address bits. They just operate at the default "base address".

The fun begins when you need to put more of these devices on a single I2C bus, and there are no available address spaces. Then you will need to use either an I2C switch (see philips) or use some sort of I2C I/O device to drive the pin selectable address bits (indirect addressing method).

Hope this helps.


I've withh EEPROM with I2C bus, the address assignment to EEPROM was through 3 address pins, Also you can find a lot of I2C aspects from PHi/lips or Cta?lyst companies.

Not open for further replies.

Part and Inventory Search

Welcome to