Discussion in "General help Guidance and Discussion" started by    RUSHI D    Apr 28, 2009.
Tue Apr 28 2009, 04:13 AM
#1
hi frnz...!

can u pls list down d differences between SPI and I2C protocols...

regards
rushi d.
Tue Apr 28 2009, 05:50 AM
#2
I2C =>less no. of pins only one line for data transfer
SPI=>two lines required for data transfer
I2C is slower than SPI.
Tue Apr 28 2009, 07:14 AM
#3
thanx shyam...

but i want detailed differences like if we r compairing their speeds den mention d max speeds they can achieve

any more difference...

regards
rushi d.
Tue Apr 28 2009, 07:32 AM
#4
There are a lot of difference from the protocol point of view. But Hardware wise it same as mentioned by shyam.

1. In I2C lot of s/w manipulation has to be done. where as in SPI programmer need to handle only SS pin if SPI is used between multiple ics.

2. I2C can reach only till 384kbps based on CCLK. Whereas SPI can go till CCLK/4. i.e., if CCLK=12MHz, Then SPI speed is 3MHz.

3. There are atleast 30-40 situation which programmer is suppose to handle in I2C for effective and efficient communication. where as in SPI only SS is suppose to be managed and data is supposed to be placed in SPDAT.

4. In SPI since both the MOSI(Master Out Slave In) and MISO(Master In Slave Out) uses a single buffer care should be taken to transfer the data.

5. I2C can be used in a situation where shrinking of the pcb is more important than speed and SPI is vice-versa

 RUSHI D. like this.
Tue Apr 28 2009, 07:41 AM
#5
I2C can go upto 4Mhz SPI can go upto 70Mhz
 RUSHI D. like this.
Tue Apr 28 2009, 07:42 AM
#6
thanx ajaz 4 ur reply

but i did not get 3rd pt..

can u explain..?
Tue Apr 28 2009, 07:57 AM
#7
He mens to say that, incase of I2C programmer has to take care of right sequence of data transfer on bus like address, start, stop, ack, nak etc...
where as in case of SPI just SS (slave select) is to be managed and data read/write is done from SSPDAT register.

these names may vary from controller to controller
Tue Apr 28 2009, 12:47 PM
#8
k got it...
thanx ajay
Tue Apr 28 2009, 06:10 PM
#9
A very valuable tool to discovering what things mean and what things do is the Google search engine.

If you type into this search engine the phrase "SPI interface", your first website shown is:
http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus

This is a pretty good description of the SPI interface, and some of what it can do...

Likewise, if you type in "I2C interface", you get this website:
http://en.wikipedia.org/wiki/I%C2%B2C

Give it a try, and see for yourself...

Hope this helps,

Get Social

Information

Powered by e107 Forum System

Conversation

Wed Aug 24 2016, 11:00 PM
Goodnews
pls i need a project writeup on LED scrolling message display using microcontroller
Mon Aug 01 2016, 03:25 PM
Manu Mishra
hi guys if u need c code for SD card interfacing with p89v51rd2 8051 controller system u can see the video of the project and the download the c code form blog http://embeddedinrajasthan.blogspot.in/?view=classic
Mon Aug 01 2016, 03:23 PM
Manu Mishra
hi guys if u need c code for finger print security system u can see the video of the project and the download the c code form blog http://embeddedinrajasthan.blogspot.in/?view=classic
ExperimenterUK
Tue Jul 19 2016, 05:59 PM
@mhammad 64 bits is 8 bytes.
Tue Jul 19 2016, 07:56 AM
mhammad kassem
hello! i want to know how to use UART in mikroc , I want to receive 64 bits from another microcontroller and i dont know how to start my code to receive the 64 bits...any help?
ExperimenterUK
Mon Jul 18 2016, 08:32 PM
@meena.. are you still having trouble ?
Sat Jul 16 2016, 10:19 AM
Meena
problem in loading email address while registering.Please help
Sun Jul 10 2016, 02:50 PM
shockwave
could you please provide a sample code that controling LED using bluetooth HC-05 interfacing pic16f877a thank you!
Sun Jul 10 2016, 02:49 PM
shockwave
Help!
ExperimenterUK
Sat Jul 09 2016, 05:25 PM
@Santhana krishnan post in forum to discuss your problem

Downloads

Comments

martinsnc115877
Sat Aug 20 2016, 01:44 PM
rajavarmanslr
Thu Aug 18 2016, 12:24 PM
mariahcarey
Sat Aug 06 2016, 11:38 AM
dann11
Thu Jul 28 2016, 09:43 PM
adithyapaip
Thu Jul 21 2016, 05:45 PM
celu
Thu Jul 21 2016, 05:27 PM
Aiko
Wed Jul 20 2016, 01:51 PM
JorgeG
Sat Jul 16 2016, 07:19 PM

Online

Guests: 52, Members: 0 ...

most ever online: 182184
(Members: , Guests: 182184) on 06 Aug 2010: 05:37 AM

Members: 37779
Newest member: martinsnc115877
Forum Activity
rajavarmanslr Avatar
Posted By rajavarmanslr
Thu Aug 18 2016, 01:40 PM
I have two 8051 that interfaces with nRF24l01. One...
rajavarmanslr Avatar
Posted By rajavarmanslr
Thu Aug 18 2016, 12:31 PM
I have two 8051 that interfaces with nRF24l01. One...
ExperimenterUK Avatar
Posted By ExperimenterUK
Mon Aug 01 2016, 05:26 AM
is working nowugoo5000Great, thanks for letting u...
ugoo5000 Avatar
Posted By ugoo5000
Sat Jul 30 2016, 07:31 AM
is working noworg 00hmov p1,#11111111bmov p3,#1111...
ugoo5000 Avatar
Posted By ugoo5000
Sat Jul 30 2016, 06:40 AM
when i press a button in p3.0,the counter will st...
ugoo5000 Avatar
Posted By ugoo5000
Sat Jul 30 2016, 06:30 AM
proteus file Attachment ...
ExperimenterUK Avatar
Posted By ExperimenterUK
Fri Jul 29 2016, 11:34 PM
Your code does not count at all, it produces a one...
ugoo5000 Avatar
Posted By ugoo5000
Fri Jul 29 2016, 07:49 PM
i want the the counter to be counting in secs with...
ExperimenterUK Avatar
Posted By ExperimenterUK
Fri Jul 29 2016, 07:31 PM
HiYour Proteus file did not upload, be sure to zip...
ugoo5000 Avatar
Posted By ugoo5000
Fri Jul 29 2016, 11:50 AM
below is the proteus file