Serial Interfaces, Part Deux -I 2 C and SPI December 4, 2002 Presented by Eugene Ho.

Slides:



Advertisements
Similar presentations
IO Interfaces and Bus Standards. Interface circuits Consists of the cktry required to connect an i/o device to a computer. On one side we have data bus.
Advertisements

I2C bus Inter Integrated Circuits bus by Philips Semiconductors
Anurag Dwivedi Rudra Pratap Suman. Scope of Communica tion Telephones and Cell Phones.
SHIFT REGISTERS: CONVERTING BETWEEN SERIAL AND PARALLEL DATA Mark Neil - Microprocessor Course 1 Serial versus Parallel Data Transfers.
1 EECS 373 Design of Microprocessor-Based Systems Prabal Dutta University of Michigan Guest Lecturer Pat Pannuto Lecture 10: Serial buses Oct 6, 2011.
Embedded Systems I2CI2C. Feature 3 wire GND SCL(clock) SDA(data) All devices share the same bus wire Using wire and, each device gain access to bus (become.
SPI Serial Peripheral Interface. SPI Serial Peripheral Interface is communication between two devices, one bit at a time sequential one bit at time over.
Lecture 8: Serial Interfaces
Serial Peripheral Interface [SPI] Controller Area Network [CAN]
EECS 373 Design of Microprocessor-Based Systems Prabal Dutta
SPI on the ATmega SS’ line only used in Slave mode SPDR
Serial Communication Buses: I 2 C and SPI By Brody Dunn.
Serial Peripheral Interface (SPI)
SPISPI Term Dr Abdelhafid Bouhraoua Term Dr Abdelhafid Bouhraoua.
I2CI2C CS-423 Dick Steflik. Inter-Integrated Circuit Developed and patented by Philips for connecting low speed peripherals to a motherboard, embedded.
Two Wire Interface Another popular serial peripheral interface bus -More flexible than SPI -Master and slave modes supported -7-bit slave address -400khz.
ECE 353 Introduction to Microprocessor Systems Michael G. Morrow, P.E. Week 13.
Lecture 27: LM3S9B96 Microcontroller – Inter- Integrated Circuit (I 2 C) Interface.
Haptic Belt team Informational Presentation.  I 2 C is a form of control bus (multi-master) which allows communication between multiple integrated circuits.
Interfaces A practical approach. Lesson 2 I2C and SPI
SPI By Alexander Maroudis. Outline What is SPI? SPI Configuration SPI Operation Master Slave Setup SPI Transactions SPI Digital Potentiometer Example.
1 EECS 373 Design of Microprocessor-Based Systems Prabal Dutta University of Michigan Lecture 10: Serial buses Oct 6, 2011.
SERIAL BUS COMMUNICATION PROTOCOLS
Serial Peripheral Interface (SPI) Bus. SPI Bus There is no official specification for the SPI bus. It is necessary to consult the data sheets of the devices.
Serial Peripheral Interface Module MTT M SERIAL PERIPHERAL INTERFACE (SPI)
Introduction Electrical Considerations Data Transfer Synchronization Bus Arbitration VME Bus Local Buses PCI Bus PCI Bus Variants Serial Buses 11/06/20141Input/Output.
LSU 10/22/2004Serial I/O1 Programming Unit, Lecture 5.
CRKit RF Control WINLAB – Rutgers University Date : June Authors : Prasanthi Maddala, Khanh Le,
4.0 rtos implementation part II
DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK–
7/23 Inter-chip Serial Communication: SPI and I 2 C Computer Science & Engineering Department Arizona State University Tempe, AZ Dr. Yann-Hang Lee.
Lecture 20: Communications Lecturers: Professor John Devlin Mr Robert Ross.
ECE 353 Introduction to Microprocessor Systems Michael Schulte Week 13.
DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK
PCA9557: REMOTE 8-BIT I 2 C AND SMBus LOW- POWER I/O EXPANDER.
Atmel Atmega128 Overview ALU Particulars RISC Architecture 133, Mostly single cycle instructions 2 Address instructions (opcode, Rs, Rd, offset) 32x8 Register.
1 Synchronous Serial IO Send a separate clock line with data –SPI (serial peripheral interface) protocol –I 2 C (or I2C) protocol Encode a clock with data.
OCRP RF Control WINLAB – Rutgers University Date : June Authors : Prasanthi Maddala, Khanh Le,
Refer to Chapter 15 in the reference book
©2008 R. Gupta, UCSD COSMOS Summer 2008 Peripheral Interfaces Rajesh K. Gupta Computer Science and Engineering University of California, San Diego.
Essentials of Communication This simple model requires many guarantees. Sender Receiver Communication Link Data.
SHIFT REGISTERS: CONVERTING BETWEEN SERIAL AND PARALLEL DATA Mark Neil - Microprocessor Course 1 Serial versus Parallel Data Transfers.
Communicating. The ATmega16 communicates through one of the following ways: Serial Peripheral Interface (SPI) Universal Synchronous and Asynchronous serial.
Embedded Communication Protocols Don Heer 10/18/10 1.
Networked Embedded Systems Sachin Katti & Pengyu Zhang EE107 Spring 2016 Lecture 9 Serial Buses – SPI, I2C.
BIRLA VISHVAKARMA MAHAVIDYALAY SUBJECT: SPI PROTOCOL & MAX7221 DISPLAY INTERFACING SUBMITTED BY: KISHAN AVASTHI( ) MANSI CHANDEGARA( )
میکرو کنترلرهای AVR Serial Interfaces, I2C and SPI
MICROCONTROLLER AND INTERFACING Presented by: Shefali Jethva ( ) Shivali Panchal ( ) Komal Soni ( ) Roll no. :- 14EC308.
1 Serial Peripheral Interface What is it? Basic SPI Capabilities Protocol Pros and Cons Uses Serial Peripheral Interface
©F.M. Rietti Communication Lines Fundamentals. ©F.M. Rietti LM-18 Computer Science SSI Embedded Systems I 2 Communication Lines Generally used to connect.
Lab 9 Multiprocessor, Buses, SPI, I2C. Multiprocessors Why multiprocessors? The structure of multiprocessors. Elements of multiprocessors: – Processing.
Serial Communication Originally created by Anurag Dwidedi and Rudra Pratap Suman.
Outline Analog to digital conversion (ADC) of NuMaker TRIO
Serial Communication Buses: I2C and SPI
Two Wire Interface Another popular serial peripheral interface bus
EE 107 Fall 2017 Lecture 5 Serial Buses – UART & SPI
Chapter 11: Inter-Integrated Circuit (I2C) Interface
(Inter-IC bus) By Tejaswini Gadicherla
EE 107 Fall 2017 Lecture 7 Serial Buses – I2C Direct Memory Access
SERIAL PERIPHERAL INTERFACE
I2C PROTOCOL SPECIFICATION
Communication Lines Fundamentals.
BJ Furman ME 106 Fundamentals of Mechatronics 15NOV2012
EEPROM Comparison – Parallel or Serial
SPI Compatible Devices
I2C and RTC Chapter 18 Sepehr Naimi
Преглед Начин функционисања Имплементације
SPI Protocol Sepehr Naimi
Serial Communication 19th Han Seung Uk.
Serial Peripheral Interface Bus
Presentation transcript:

Serial Interfaces, Part Deux -I 2 C and SPI December 4, 2002 Presented by Eugene Ho

2 Serial Interfaces, part two Introduction I 2 C and SPI Serial communication protocols Meant for short distances “inside the box” Low complexity Low cost Low speed ( a few Mbps at the fastest ) To be discussed: Applications, protocols, tradeoffs, AVR support

3 Serial Interfaces, part two What is I 2 C? Shorthand for an “Inter-integrated circuit” bus Developed by Philips Semiconductor for TV sets in the 1980’s I 2 C devices include EEPROMs, thermal sensors, and real-time clocks Used as a control interface to signal processing devices that have separate data interfaces, e.g. RF tuners, video decoders and encoders, and audio processors. I 2 C bus has three speeds: –Slow (under 100 Kbps) –Fast (400 Kbps) –High-speed (3.4 Mbps) – I 2 C v.2.0 Limited to about 10 feet for moderate speeds

4 Serial Interfaces, part two I 2 C Bus Configuration 2-wire serial bus – Serial data (SDA) and Serial clock (SCL) Half-duplex, synchronous, multi-master bus No chip select or arbitration logic required Lines pulled high via resistors, pulled down via open-drain drivers (wired-AND)

5 Serial Interfaces, part two I 2 C Protocol 1. Master sends start condition (S) and controls the clock signal 2. Master sends a unique 7-bit slave device address 3. Master sends read/write bit (R/W) – 0 - slave receive, 1 - slave transmit 4. Receiver sends acknowledge bit (ACK) 5. Transmitter (slave or master) transmits 1 byte of data

6 Serial Interfaces, part two I 2 C Protocol (cont.) 6. Receiver issues an ACK bit for the byte received 7. Repeat 5 and 6 if more bytes need to be transmitted. 8.a) For write transaction (master transmitting), master issues stop condition (P) after last byte of data. 8.b) For read transaction (master receiving), master does not acknowledge final byte, just issues stop condition (P) to tell the slave the transmission is done

7 Serial Interfaces, part two I 2 C Signals Start – high-to-low transition of the SDA line while SCL line is high Stop – low-to-high transition of the SDA line while SCL line is high Ack – receiver pulls SDA low while transmitter allows it to float high Data – transition takes place while SCL is low, valid while SCL is high

8 Serial Interfaces, part two I 2 C Features “Clock stretching” – when the slave (receiver) needs more time to process a bit, it can pull SCL low. The master waits until the slave has released SCL before sending the next bit. “General call” broadcast – addresses every device on the bus 10-bit extended addressing for new designs. 7-bit addresses all exhausted

9 Serial Interfaces, part two AVR Support for I 2 C Atmel calls it “Two-wire Serial Interface” (or TWI) Supported by all AVR 8-bit μC except ATTiny and AT90 ATmega323 TWI mode when TWEN in TWCR is set: PC0=SCL, PC1=SDA TWBR – sets bit rate TWCR – controls start, stop, ack generation, indicates M/S, T/R TWDR – contains byte transmitted/received TWAR – contains slave address TWSR – indicates status of TWI Bus (start condition transmitted, ACK received, … 26 total states)

10 Serial Interfaces, part two I 2 C Tradeoffs Advantages: Good for communication with on-board devices that are accessed occasionally. Easy to link multiple devices because of addressing scheme Cost and complexity do not scale up with the number of devices Disadvantages: The complexity of supporting software components can be higher than that of competing schemes ( for example, SPI ).

11 Serial Interfaces, part two What is SPI? Shorthand for “Serial Peripheral Interface” Defined by Motorola on the MC68HCxx line of microcontrollers Generally faster than I 2 C, capable of several Mbps Applications: Like I 2 C, used in EEPROM, Flash, and real time clocks Better suited for “data streams”, i.e. ADC converters Full duplex capability, i.e. communication between a codec and digital signal processor

12 Serial Interfaces, part two SPI Bus Configuration Synchronous serial data link operating at full duplex Master/slave relationship 2 data signals: –MOSI – master data output, slave data input –MISO – master data input, slave data output 2 control signals: –SCLK – clock –/SS – slave select (no addressing)

13 Serial Interfaces, part two SPI vs. I 2 C For point-to-point, SPI is simple and efficient –Less overhead than I 2 C due to lack of addressing, plus SPI is full duplex. For multiple slaves, each slave needs separate slave select signal –More effort and more hardware than I 2 C

14 Serial Interfaces, part two SPI Protocol 2 Parameters, Clock Polarity (CPOL) and Clock Phase (CPHA), determine the active edge of the clock Master and slave must agree on parameter pair values in order to communicate CPOLCPHAActive edge 00Rising 01Falling 10 11Rising

15 Serial Interfaces, part two SPI Protocol (cont.) Hardware realization is usually done with a simple shift register SPI interface defines only the communication lines and the clock edge There is no specified flow control! No acknowledgement mechanism to confirm receipt of data

16 Serial Interfaces, part two AVR Support for SPI Supported by all AVR 8-bit μC except ATTiny and some AT90s ATmega323 - SPI mode when SPE bit in SPCR is set: PB6=MISO, PB5=MOSI, PB7=SCK, PB4=/SS SPCR – sets bit rate, CPOL, CPHA, M/S SPDR – used for data transfer to and from SPI shift register For multiple slaves, must employ “bit-banging”. Use software to control serial communication at general-purpose I/O pins.

17 Serial Interfaces, part two Summary I 2 C and SPI provide good support for communication with slow peripheral devices that are accessed intermittently, mainly EEPROMs and real- time clocks I 2 C easily accommodates multiple devices on a single bus. SPI is faster, but gets complicated when there is more than one slave involved.

18 Serial Interfaces, part two References I 2 C: I2C_BUS_SPECIFICATION_1995.pdf SPI: MC68HC11 manual