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

ExperimenterUK
Thu Oct 30 2014, 06:02 PM
This is a chat box..create a thread if you need help...but we don't do homework
Tue Oct 28 2014, 07:33 PM
vinni
hi rickey...anyone got the pgm...pls gimme now
Tue Oct 28 2014, 06:35 PM
potla
hi vinni even i need that program. help me if you get it
Tue Oct 28 2014, 03:22 PM
vinni
1. Using a look-up table in Flash ROM and accumulator offset indexed addressing mode, write a program that acts as a timer. The timer should count from 0 to 59 seconds. After reaching 59, it should go back to 0 on the next second and continue to count up. The timer should use the seven-segment display. The look-up table should contain information on how to display the digits 0 – 9 on the seven-segment display
Tue Oct 28 2014, 03:22 PM
vinni
hello Rickey..i need this pgm very urgently
Tue Oct 28 2014, 01:42 AM
Boy Donald
Dear sir, thanks before. i have some project urgent for my school and my project need this digital countdown timer using 7 segmen display. but your project only show ten minutes countdown, i need your help, can you show me more to change the minute or set the time manually. thank you, sorry for disturbing you.
Tue Oct 28 2014, 01:32 AM
Boy Donald
dear sir
Tue Oct 28 2014, 01:19 AM
Boy Donald
Rickey you inspired me a lot but why i can not change the time ( minute
Sun Oct 26 2014, 02:51 AM
sandeep bankar
dear sir I m facing problem about..how to read number of incoming call in gsm 900 a. pls help how to read it in atmel avr microcontroller.
ajay_bhargav
Mon Oct 20 2014, 11:22 AM
@skrishna, please post in forum so we can help you better.

Downloads

Comments

prash5054
Thu Oct 30 2014, 06:34 AM
Max.otto
Mon Oct 27 2014, 01:23 PM
toypoy
Sun Oct 26 2014, 01:06 AM
hiswe
Thu Oct 23 2014, 04:18 PM
pddung93
Sun Oct 19 2014, 01:56 PM
msideal
Thu Oct 16 2014, 08:48 AM
robotgirl
Tue Oct 14 2014, 06:23 PM
BRV64
Mon Oct 13 2014, 05:48 AM

Online

Guests: 41, Members: 0 ...

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

Members: 37535
Newest member: prash5054
Forum Activity
rkodaganur Avatar
Posted By rkodaganur
Fri Oct 31 2014, 01:44 AM
Hi Ajay, I wanted to know can we use transformer ...
Max.otto Avatar
Posted By Max.otto
Thu Oct 30 2014, 11:09 AM
Hello all, before generating i have to give PWM p...
prash5054 Avatar
Posted By prash5054
Thu Oct 30 2014, 06:40 AM
can u post the updated code for the above problem ...
ExperimenterUK Avatar
Posted By ExperimenterUK
Wed Oct 29 2014, 05:36 PM
Thank you for the feedback.It's good to hear when ...
msideal Avatar
Posted By msideal
Tue Oct 28 2014, 05:34 PM
ExperimenterUK: Thankyou so much for helping me......
msideal Avatar
Posted By msideal
Tue Oct 28 2014, 05:18 PM
thanks ExperimenterUK for your help.... I will try...
ExperimenterUK Avatar
Posted By ExperimenterUK
Mon Oct 27 2014, 10:29 PM
Your error seems to be the use of PINC, which is f...
msideal Avatar
Posted By msideal
Mon Oct 27 2014, 05:45 PM
i want to extend my i/o's by writing this code. i ...
Max.otto Avatar
Posted By Max.otto
Mon Oct 27 2014, 01:30 PM
Hi all , i am working with PSoC 5LP. I have contin...
gaurav7577 Avatar
Posted By gaurav7577
Mon Oct 27 2014, 09:53 AM
hello everyone i wanna interface blood pressure se...