Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

I2C microcontroller interface

Status
Not open for further replies.
Each I2C chip on a bus needs a unique(different) address. When you choose to use devices with fixed address you can only use 1 device of that type on a given buss, but you can combine it with other devices with other addresses.

For example, the clock chip you are looking at has a fixed address. Why would you want to use more then one clock chip? They keep real world time like 10:30AM, a second clock of this type would be redundant (useless, pointless).

But you might want to use that clock in conjunction with something like an EEPROM. As a rule these have several pins that allow you to alter the address so you can use several at a time. This makes sense because with memory more is better. So you could have one clock and up to 4 EEPROMs on the same bus.

There are two types of data transfers. Synchronous and Asynchronous. The I2C transfer is a synchronous transfer. The clock provided by the I2C master regulates the speed at which data bits are provided by the slave. The data rate is specified as a frequency of the clock provided to the slave by the master rather then as a baud rate.

It only seems to be contradictory due to either a language problem or perhaps a lack of needed previous knowledge on your part. I do not know which and it is very hard to tell as one may look like the other.

If you understand how Synchronous and Asynchronous transfers work and differ great. If not you need to start there prior to understanding I2C.

You could work on asking better formed questions. Provide links to the data sheets for the exact part or parts you are working with.

Some concepts are explained quite well by wikipedia. It is a good place to start if you need info.

I hope this has been helpful. :)

simrantogether said:
Many questions arise...

If the address is fixed as 0x68 then how we can say that we can attach as many number of devices on I2C bus... we want till the addresses are available...

Hence, the conclusion comes to be that we can interface only one DS1307... which is contradictory...

Secondly,

1101000 signifies 0x68 ... sure...

and is there any baud rate followed to transfer the data...


PS: I know i am putting more stress on forum... which i should not do... but i am sorry for that...

Regards,

Simran..
 
I seem to recall 100 kbps, 400 kbps, and 1 mbps "standard" I2C speeds. Wasn't the DS1307 a 100 kbps device? Anyway, the CCP module "I2C" section should provide info' and formula for setting up the I2C clock for 100 or 400 kbps...

good luck on your project.

Mike
 
Status
Not open for further replies.

New Articles From Microcontroller Tips

Back
Top