Você está na página 1de 6

TRABALHO DA DISCIPLINA DE MICROCONTROLADORES

SPI SERIAL PERIPHERAL INTERFACE

Alunos:

Marcos Henrique de Lima Santos

Julia Ribeiro

UNESP

BAURU-SP
1. INTRODUO

SPI ou Serial-Peripheral Interface um protocolo padro de comunicao mundialmente aceito.


O protocolo SPI foi inventado pela Motorola. O protocolo SPI considerado como um dos melhores entre
os sistemas que esto ligados a uma srie de dispositivos e torna a comunicao rpida e fcil.
O SPI, assim como outros protocolos seriais tais como I2C e 1-wire, por exemplo, so bem
aceitos para comunicao de dados a partir de circuitos integrados para velocidades de transferncia de
dados baixa ou mdia aos perifricos que conectados ao chip da placa. comumente encontrado em
telefones celulares e outros dispositivos mveis que comunicam dados entre a CPU, teclado, tela e chips
de memria.
Geralmente, os dispositivos baseados no protocolo SPI so divididos em master-device e slave-
device para transmisso de dados. O SPI foi introduzido como o primeiro microcontrolador que derivou
da mesma arquitetura do popular microprocessador Motorola 68000, foi anunciado em 1979. O SPI foi
definido como um barramento externo de microcontrolador e foi usado para conectar os perifricos de
microcontrolador com quatro fios.

2. O PROTOCOLO SPI (Serial-Peripheral Interface)


O SPI padro um de alta velocidade, full-duplex, com barramento de comunicao sncrona.
Como uma das caractersticas do SPI ser simples de utilizar, mais e mais chips integrados usam o
protocolo SPI. O princpio de comunio do protocolo SPI muito simples. Ele funciona no modo
master-slave full duplex que geralmente tem um dispositivo master e um ou mais dispositivos slave e ele
exige quatro linhas cujos componentes so SDI (Slave Data IN - Pino de dados de entrada), SDO (Slave
Data OUT - Pino de dados de sada), SCK (Clock de sincronizao), CS (chip select) no mnimo. Quando
o master SPI quer enviar dados para o slave ou mais slaves, ele pe a linha do CS em nvel baixo para
selecionar os slaves, e ativa o sinal de clock que utilizvel entre o master e o slave ao mesmo tempo. O
master transmite o dado para a linha MOSI (Master OUT Slave IN - Dados do Master para Slave) e
recebe o dado a partir da linha MISO (Master IN Slave OUT - Dados do Slave para Master) no instante. O
SPI um protocolo de comunicao serial em que os dados so transmitidos bit a bit. O pulso de clock
feito por um SCK (Clock de sincronizao) e SDI (Slave Data IN - Pino de dados de entrada), o SDO
(Slave Data OUT - Pino de dados de sada) baseado sobre esse pulso para fazer a transmisso dos dados.
A sada de dado atravs da linha SDO do master na borda de subida ou descida do clock, e lido pelo
slave na borda de subida ou descida seguinte. Ento a transferncia de dado de 8-bits precisa no mnimo
de 8 mudanas no sinal de clock.

O SPI um protocolo de quatro linhas de sinal :

Sinal Aclock(SCLK) envia do master para todos os slave; todos os sinais do SPI so
sncronos ao sinal de clock
Um sinal para selecionar o slave (SS) para cada slave, usado para selecionar o slave
com que o master vai se comunicar.
Uma linha de dados do master para os slaves, chamada Master Out-Slave IN (MOSI).
Uma linha de dados dos slaves para o master, chamada Master In-Slave OUT(MISO).
O SPI um protocolo de comunicao single-master. Isso significa que um dispositivo central
inicia todas as comunicaes com os slaves.
Quatro modos de comunicao esto disponveis no SPI:
A borda SCLK em que alterna a linha MOSI.
A borda SCLK em que o master recebe a linha MISO.
O sinal SCLK est estvel (que o nvel de clock, alto ou baixo, quando o clock no
est ativo).
Cada modo definido como um par de parmetros chamado polaridade do clock (CPOL) e fase
do clock (CPHA).

Figura 1 Os modos SPI so definidos com os parmetros de polaridade clock (CPOL) e fase de clock
(CPHA), que explicitamente definem trs parmetros: as bordas usadas para amostragem de dados e
alternncia de dados e o nvel inativo do sinal de clock SCLK.
Figura 2 Um exemplo simples de comunicao SPI. Os bits de dados alternados no MOSI e MISO
na borda de descida do SCLK e so amostrados na borda de subida do SCLK. O modo SPI define qual
borda do SCLK usada para alternncia de dados e qual borda do SCLK usada para amostrar os dados.

Um par master/slave deve usar o mesmo conjunto de parmetros frequncia SCLK, CPOL, e
CPHA para a comunicao ser possvel. Se forem usados mltiplos slaves configurados em diferentes
configuraes, o master ter que se reconfigurar a todo o momento em que precise se comunicar com um
slave diferente.
Isso basicamente tudo o que definido para o protocolo SPI. O protocolo SPI no define
qualquer taxa mxima de transferncia de dados nem qualquer esquema de endereamento em particular;
ele no tem um mecanismo de reconhecimento para confirmar a recepo de dados e no oferece
qualquer controle de fluxo. Realmente, o master SPI no tem conhecimento da existncia de um slave, a
menos que alguma coisa adicional seja feita fora do protocolo SPI.
3. EXEMPLO

Figura 3 - Exemplo SPI


A comunicao SPI sempre tem u m master. Isto , sempre um ser o master e o restante ser
slave. Por exemplo, na Figura 3 o dispositivo em azul o master e os outros trs so slaves. A
comunicao da Figura 3 contm quatro conexes:
MISO (Master IN Slave OUT) - Dados do Slave para Master;
MOSI (Master OUT Slave IN) - Dados do Master para Slave;
SCK (Serial Clock) - Clock de sincronizao para transmisso de dados entre o Master
e Slave;
SS (Slave Select) - Seleciona qual Slave receber os dados.

A Figura 3 mostra um exemplo de como funciona a comunicao SPI. Alguns perifricos so


apenas Slave, por exemplo, carto SD, memria flash e alguns sensores.
Geralmente estes perifricos contm a mesma pinagem que acima ou a pinagem abaixo:
SDI - Slave Data IN - Pino de dados de entrada;
SDO - Slave Data OUT - Pino de dados de sada;
CS - Seleo de Chip;
SCK - Clock de sincronizao.
4. TABELA COM CARACTERSTICAS SPI

SPI
Criador Motorola(1979)
Plug e Play No
Tipo de Interface Serial
Distncia Curta (Comunicao In-box)
Aplicao Transferncia de dados
Complexidade do protocolo Baixo
Custo de projeto Baixo
Taxa de transferncia Free (n x MHz to 10n x MHz)
Consumo de Energia Baixo
Tipo de transferncia Full-duplex
Time Constraint Sncrono
Multi Master No
Multi Slave Sim
I/O constraints No constraint
Endereamento HARDWARE(CS)
Controle de Flow No
Alongamento de Clock No

Bibliografia:

[1] An Introduction to IC and SPI protocols - Frderic Leens.

[2] FPGA Implementation of IC & SPI Protocols:a Comparative Study -A.K. Oudjida, M.L.
Berrandjia, R. Tiar, A. Liacha, K. Tahraoui.
[3] IP Design of Universal Multiple Devices SPI Interface - Tianxiang Liu1 , Yunfeng Wang1.

[4] Design and Implementation of SPI Bus Protocol with Built-In-Self-Test Capability over FPGA -
Shumit Saha, Md. Ashikur Rahman, Amit Thakur.

[5] Barramento Serial IC e SPI - Braian Konzgen Maciel, Luciane Baldassari Soares, Ygor Quadros
de Aguiar.

Você também pode gostar