Jump to content

Recommended Posts

Hey,

 

I'm just doing some reading on the I2C communication protocol, and I was wondering: how are addresses assigned to slaves? Is the address assigned when the physical circuit is being created and pins are connected to HIGH or LOW depending on what the designer wants?

Link to post
Share on other sites
I'm just doing some reading on the I2C communication protocol, and I was wondering: how are addresses assigned to slaves? Is the address assigned when the physical circuit is being created and pins are connected to HIGH or LOW depending on what the designer wants?

 

It just depends on devices. Serial EEPROM memories, for instance, have external address pins, allowing up to 8 elements on the same bus to cohexist. See Microchip's 24xx family datahseet, for instance.

Other devices instead have their addess fixed on silicon (see DS13xx RTC, just to name one), and other are nothing but MCUs used as slave peripherals. Older PICs' basic SSP - e.g. PIC16C7x - natively supported only IIC slave interface in hardware, where the device address was user assigned using a dedicated register.

Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...