Buscar

Interfaces de Comunicação

Prévia do material em texto

Universidade Federal da Bahia - UFBA
Departamento de Engenharia Elétrica – DEE
Professor: José Emílio (Jemilioqs@gmail.com)
 1. Comunicação Serial e Paralela
 2. RS-232
 3. I²C
 4. SPI
 5. USB
 6. CAN
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 2
O que é?
Comunicação que utiliza apenas 1 canal para 
trafegar a informação.
Para que?
Foi desenvolvida com a finalidade de baratear os 
custos com cabos, sistemas e distancia.
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 3
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 4
Comunicação Paralela:
Todos os bits de uma palavra são transmitidos 
simultaneamente;
Cada canal necessita de diversos fios.
Vantagens:
-Maior Rapidez;
-Maior simplicidade das interfaces.
Desvantagens:
-Muitos Fios (maior custo);
-Ruído, perda de sincronismo.
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 5
Comunicação Serial:
 O bits de uma palavra são transmitidos sequencialmente no tempo, 
em um único meio físico;
Vantagens:
-Poucos Fios;
-Distâncias Grandes.
-Maior imunidade a ruídos;
Desvantagens:
-Menor velocidade;
-Maior complexidade dos protocolos.
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 6
ENGC50 - Sistemas 
Microprocessados Tópico 3: 
Interfaces de comunicação 7
A comunicação Serial pode ocorrer de duas formas:
 Síncrona
 Assíncrona 
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 8
Transmissor e receptor utilizam o mesmo Clock com 
mesma frequência e fase
Transferência de Blocos:
 Bits de sincronismo;
 Bits Dados;
 Bits de erro.
Menor Overhead;
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 9
O Clock do transmissor e do receptor podem estar 
ligeiramente diferentes. (ressincronismo a cada bloco)
Transferência de Blocos, a cada bloco de informação 
existe 2 ou 3 bits de controle:
 Bit de start;
 Bit de paridade;
 Bit de stop (1 ou 2 bits).
Maior Overhead;
Clock incluído ou incorporado à 
informação;
Transferência de dados contínuos e sem 
checagem dos dados;
Útil para aplicações em tempo real sem 
precisão;
EX: Vídeo conferência 
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 10
 Simplex - a informação e transferida em apenas 
uma direção (transmissor - receptor).
Half-Duplex - comunicação bidirecional em 
apenas uma direção por pacote de dado;
 Full-duplex: comunicação bidirecional simultânea. 
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 11
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 12
Código:
 Conjunto de regras pelas quais os dados podem ser 
convertidos a uma representação do código;
 Para transmitir a informação em uma interface é 
necessário que esteja codificada.
 A unidade mais básica da informação para nós é o bit 
(0 ou 1).
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 13
Código ASCII:
American Standard Code for Information Interchange
Código universal para intercâmbio de informações. Concebido 
para utilização de transmissão e Processamento de dados.
 ASCII (7bits) = 128 caracteres;
 ASCII (8bits) = 256 caracteres;
Ex: código 0100 0001 = 65D = caractere “A” 
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 14
Destina-se a detecção de erros:
 Paridade Par: numero par de bits no estado 1;
 Paridade Impar: numero impar de bits no estado 1;
Ex: caracter “A” em ASCII (7bits): X1000001
Para a paridade ímpar qual deve ser o bit X?
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 15
Ex2.: Dado o dado: 1100 0001
Supondo que por um erro, um bit 0 
“virou” 1: 1100 0001 -> 1100 1001
O que ocorre com o sistema? 
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 16
Transmissão de um caractere (“A”) em ASCII com 
paridade ímpar e dois bits de stop:
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 17
Características:
 Se há transmissão de dados = linha de dados em nível 
lógico 1;
 Paridade: par, ímpar ou sem paridade;
 Normalmente se usa 1 ou 2 bits de stop;
 Quantidade de bits: de 5 a 8 bits*; 
 O Tx e Rx devem juntos possuir os mesmo parâmetros: 
taxa de transmissão, tamanho da palavra, paridade e bits 
de parada!
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 18
Ex.: Onde o bit de start começa? Onde os demais bits começam?
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 19
Bit Rate: Nº de bits por segundos = bits/seg
Baud Rate: é o Nº de eventos por segundos
Cada evento pode transmitir mais de 1bit 
(modens);
Quando cada evento representa apenas 1 bit, 
então o Bit Rate = Baud Rate!
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 20
Considerando um caractere formado por 11 bits:
1 start bit
8 bits de dados
1 bit de paridade 1 stop bit 
Considerando uma velocidade de 10 caracteres por 
segundo, tem-se: 
11 bits/caractere x 10 caracteres/s = 110 bits/s
Baud = 110bits/seg
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 21
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 22
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 23
Padronizada pela EIA ( Electronic Industries Association -
USA)
RS : Recommended Standard
232 : número da norma
C : revisões da norma
Tipo de comunicação : Serial Assíncrona
Características da Interface
Taxa de Comunicação: 75 Baud - 19200 Baud (20Kbps)
Comprimento do cabo: < 15 metros, sem amplificação.
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 24
Padrão físico:
DB25 DB9 Sinal
2 3 TxD
3 2 RxD
4 7 Request to Send – RTS
5 8 Clear to Send – CTS
6 6 Data Set Ready – DSR
7 5 GND
8 1 Data carrier Detect – DCD
15 Transmit Clock – TXCk
17 Receive Clock – RXCk
20 4 Data Terminal Ready – DTR
22 9 Ring Indicator - RI
24 Auxiliary Clock
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 25
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 26
Padrão elétrico:
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 27
Drivers utilizados na comunicação RS232-
C:
1488 – Quad line drivers;
1489 – Quad line receiver;
MAX232C: 
alimentado com 5V gera +12V e – 12V;
Fornece 2 drivers e dois receivers.
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 28
Regra de comunicação:
Um Protocolo de Comunicação de Dados estabelece 
regras para a comunicação entre um DTE e um DCE ou 
entre um DTE e um DTE.
 DTE : Data Terminal Equipment
 Equipamento que compreende a fonte de dados, a 
recepção de dados ou ambos;
 DCE : Data Communication Equipment
 Equipamento que providencia as funções necessárias 
para manter uma conexão de dados, e realizar a 
conversão do sinal necessária à comunicação entre 
um DTE e o circuito de comunicação.
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 29
Regra de comunicação:
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 30
Regra de comunicação:
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 31
Regra de comunicação:
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 32
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 33
O RS-232-C define características:
• Níveis de tensão;
• Taxade sinalização;
• Taxa de rotação dos sinais;
• Nível máximo de tensão;
• Comportamento de curto-circuito;
• Carga máxima da capacitância.
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 34
O RS-232-C define características:
• Mecânicas da interface - conectores.
• Funções de cada circuito no conector da interface;
• Subconjuntos padrões de circuitos de interface 
para aplicações selecionadas de telecomunicação.
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 35
O padrão RS-232-C não define elementos como:
• Codificação de caracteres (ASCII)
• Enquadramento dos caracteres no fluxo de dados (bits por 
caractere, bits de início e parada, paridade)
• Protocolos para detecção de erros ou algoritmos para 
compressão de dados
• Taxas de bit para transmissão, apesar de o padrão dizer ser 
destinado para taxas de bits menores que 20.000 bits por 
segundo. 
• Fornecimento de energia para dispositivos externos
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 36
Universal Asynchronous Receiver/Transmiter
 Conversão paralela / serial;
 Inserção / Retirada automática dos bits de start e paridade;
 Velocidade programáveis;
 Interrupções para transmissão / recepção
 Indicação de erro;
Utilizado em:
Microcontroladores – PIC, Atmega, MSP430, entre outros..
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 37
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 38
Muitos Microcontroladore utilizam UARTs internas, como 
o objetivo:
Facilmente escrever ou ler dados via interfaces serial;
Realiza todo o processo de serialização, adição de 
start bits e stop bits;
Permite transferência via interrupções ou “wait for 
flag”.
São necessários pré-configurações para utilizar o 
modulo UART em microcontroladores:
Definir a taxa de comunicação;
Definir a origem do clock de comunicação;
Programar o canal serial;
Habilitar/desabilitar interrupções como: “Wait for flag”
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 39
Exemplo 1:
#include <18F4550.h>
#use delay(clock=20000000)
#fuses NOWDT,HS, NOCPD, NOPROTECT, NOMCLR, NOPUT, BROWNOUT
#use rs232(baud=9600,parity=N,BITS=8,xmit=PIN_C6,rcv=PIN_C7)
#define botao input(pin_A0) //botao
void main (void)
{
while(true){
if (botao==0){
printf("A");
}
}
}
ENGC50 - Sistemas Microprocessados
Tópico 3: Interfaces de comunicação 40
Exemplo 2:
#include <18F4550.h>
#use delay(clock=20000000)
#fuses NOWDT,HS, NOCPD, NOPROTECT, NOMCLR, NOPUT, BROWNOUT
#use rs232(baud=9600,parity=N,BITS=8,xmit=PIN_C6,rcv=PIN_C7)
#define botao input(pin_A0) //botao
#define led_liga output_high(pin_D0)
#define led_desliga output_low(pin_D0)
void main (void)
{
char x; 
while(1){
putchar(x);
if (kbhit()){
x=getchar();
}
}
}
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 41
 Desenvolvida pela Holandesa Philips em 1980;
 Simplificar as conexões entre periféricos;
 Reduzir os ruídos;
 Controle de sistemas de áudio e vídeo.
 I²C – Inter-integeted Circuit;
 Amplamente utilizado em comunicação de dispositivos 
onboard;
 É Composto por duas linhas: Serial Data Line (SDA) e Serial 
Clock Line (SCL); 
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 42
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 43
 Possuem endereço fixo;
 Podem ser configurados para transmitir e/ou receber;
 Mestre: Microcontroladores;
 Escravo: microcontroladores, memorias RAM/ROM, conversores 
AD e DA, processadores de áudio e de vídeo e etc.
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 44
 SDA: Bi-direcional;
O Mestre gera o sinal de clock;
 Todos os sinais de controle trafegam na linha de 
dados (SDA);
O número máximo de dispositivos é limitado pela 
capacitância do barramento – Máx. 400pf;
O Mestre SEMPRE inicia a comunicação;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 45
 A informação sempre trafega em grupos de 8bits 
(1byte);
 Taxa de transmissão:
 10Kbps – low-mode;
 100Kbps – Standard-mode;
 400Kbps – Fast-mode;
 3,4Mbps – High-mode.
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 46
 SDA e SCL são bidirecionais e devem ser mantidas alimentadas 
através de resistores de pull-up;
 O sistema estará ocioso sempre que alinha estiver em nível lógico 
1;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 47
 Quando o dispositivo mestre mudar o nível lógico da linha SDA de alto para 
baixo enquanto a linha SCL estiver em nível lógico alto = BIT de START;
 Após a condição START o sinal de clock é ativado pelo dispositivo mestre;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 48
 A direção do fluxo de dados é embutido no primeiro 
byte da transmissão;
 Após os 7 bits de endereço o dispositivo mestre envia o 
bit R/W que determina o sentido do Fluxo;
 Ao final de cada byte transmitido o receptor tem de 
enviar um pulso ACK (acknowledge);
 O pulso ACK indica para o transmissor que um byte foi 
recebido com sucesso!;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 49
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 50
1. O barramento está livre – SDA e SCL = 1;
2. Se barramento livre = qualquer dispositivo pode solicitar a 
comunicação;
3. O mestre inicia a comunicação enviando “condição inicial”;
4. O mestre envia para o “target”, na ordem: 
 1 byte (7 bits) – endereço;
 1 byte (7bits + 1 bit R/W);
5. O endereço é comparado pelos dispositivos;
6. O escravo com o endereço correspondente responde com um ACK;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 51
7. A sequencia de troca de informações começa;
8. O mestre envia o endereço de registro do dispositivo a se 
comunicar;
9. O escravo responde com um ACK;
10. O mestre estabelece a comunicação total e pode 
escrever e ler dados do escravo;
11. Leitura e escrita pelo mestre – cada Byte deve, 
necessariamente, reconhecido por um bit ACK;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 52
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 53
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 54
 Desenvolvida pela Motorola;
 SPI – Serial Peripheral Interface;
 Utiliza uma conexão Full-Duplex;
 É Composto por 4 linhas Básicas: 
 Serial Data out (SDO);
 Serial Clock (SCK);
 Serial Data IN (SDI);
 Chip Select (CS);
 Comumente utilizado em PDA’s, celulares e sistemas 
microcontrolados.
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 55
 Não se limita a 8-bit palavras;
 Escolha arbitrária do tamanho da mensagem, conteúdo 
e finalidade Interface de hardware extremamente 
simples;
 Normalmente mais baixos requisitos de energia do que 
I2C devido a menos circuitos;
 Não necessita de resistores de pull-up;
 Escravos usar relógio do mestre, e não precisam de 
osciladores de precisão;
 Os escravos não precisa de um endereço único;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 56
 Taxa de comunicação máx.: 10Mbps;
 Quantidade máxima de escravos: x?
Mestre/Escravo;
 Master: é aquele que inicia a transferência 
de dados e gera sinais de clock (SCK);
 Slave é um dispositivo controlado pelo 
master. É controlado pela linhas Chip 
Select(CS) ou Select Slave(SS)
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfacesde comunicação 57
Mestre/Escravo;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 58
 Mestre -> Escravo 1, Escravo 2, ... , Escravo N;
 Quando se desejar conectar mais dispositivos ao master, 
usam-se vários sinais de CS(SS).
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 59
 O mestre configura o clock, com freqüência <= à 
frequência máxima do escravo.
 Durante cada ciclo de Clock, um full-duplex de 
transmissão de dados ocorre:
 O master envia 1bit na linha MOSI; o slave lê 
na mesma linha.
 O slave envia 1bit na linha MISO; o master lê 
na mesma linha.
 As transmissões podem envolver qualquer número 
de ciclos de Clock. Quando não ha mais dados para 
serem transmitido, o Master para, alternando seu 
Clock.
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 60
Sequencia de dados de entradas e de saída.
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 61
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 62
Soluções anteriores para conexão de periféricos
ao PC;
 Não eram fáceis de usar (plug-and-play) do 
ponto de vista do usuário;
 Limitado número de portas que não podem ser 
facilmente aumentado;
 Falta de uma porta bidirecional, de baixo custo 
com uma taxa de transferência média;
 Para cada novo dispositivo uma nova interface 
era definida;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 63
 Facilidade de conexão de periféricos ao PC;
 Solução de baixo custo para até 480 Mb/s;
 Suporte para voz, áudio e vídeo em tempo real;
 Protocolo flexível com mistura de modos 
isócrono e assíncrono;
 Integração com dispositivos de consumo;
 Padrão capaz de ser facilmente adotado em
produtos;
 Permitir novas classes de dispositivos
periféricos;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 64
Facilidade de uso para o usuário final
 Um único modelo para o cabeamento e
conectores
 Detalhes elétricos invisíveis para o usuário
(terminadores de barramento)
 Periféricos auto-identificáveis, com 
configuração e seleção de driver automáticas
 Periféricos hot-pluggable
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 65
Grande variedade de aplicações
 Adequada para taxas de alguns kb/s até várias
centenas de Mb/s;
 Transferências isócronas e assíncronas;
 Operação concorrente em vários dispositivos Até 
127 dispositivos físicos;
 Suporta dispositvos compostos (que possuem
diversas funções);
 Alimentação no mesmo cabo +5V @ 100-500mA, 
dependendo do hub;
 Dispositivos entram no modo de economia após 
3ms de inatividade no barramento;
JE2
Slide 65
JE2 continuar a aula daqui
Jose Emilio; 11/04/2016
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 66
Flexibilidade
 Variedade de tamanhos de pacotes;
 Permite variação nas taxas de dados dos 
periféricos;
 O protocolo implementa controle de fluxo;
Robustez
 Tratamento e recuperação de erros incluídos
no protocolo;
 Adição e remoção de dispositivos percebidos
pelo usuário como sendo em tempo real;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 67
Versões
USB 1.1
 Low-speed: 1.5 Mbps
 Full-speed: 12 Mbps
USB 2.0 
 Half-Duplex
 High-speed: 480 Mbps
 USB On-The-GO
 Wireless USB
 3 m: 480 Mbps
 10 m: 110 Mbps
USB 3.0 e 3.1
 Full-Duplex
 4,8Gbps
 Alimentação 900mA
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 68
Fisicamente não é uma topologia em barramento
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 69
Dispositivos USB apresentam uma interface padrão USB
Entendem o protocolo USB
Respondem a operações padrão USB como configuração e reset
Possuem informação de descrição
 Versão do padrão USB
 Classe de dispositivo
• hub
• HCI
• impressora
• dispositivo de imagem
• dispositivo de armazenamento
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 70
No máximo 7 níveis devido a temporização;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 71
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 72
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 73
Hubs USB:
 Permite a extensão do barramento USB;
 Pode ser integrado a dispositivos ou stand-alone;
 Deve detectar quanto dispositivos são conectados 
ou desconectados nas suas portas;
Dispositivos USB:
 High-speed 480 Mbps;
 Full-speed 12 Mbps;
 Low-speed 1.5 Mbps;
Portas de baixa velocidade ficam desabilitadas quando 
há uma transmissão de alta velocidade;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 74
Sinais e alimentação em um cabo com 4 vias;
Dados codificados em NRZI com bit stuffing após seis 1s
consecutivos:
 clock pode ser recuperado do sinal
 Uma campo de SYNC precede cada pacote, para 
sincronizar o clock
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 75
São utilizados terminadores ativos em ambos os 
extremos do cabo:
 Deteção de conexão e desconexão de dispositivos;
 Diferenciação entre dispositivos high/full-speed e low-
speed;
Todos os dispositivos possuem conexão upstream;
Conectores para upstream e dowstream são diferentes;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 76
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 77
Tipo A, Upstream:
Tipo B, Downstream:
Pino cor sinal
1
2
vermelho 
branco
+VCC
-Data
+data3
4
verde 
preto -VCC
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 78
Driver de dispositivo USB:
 Solicita transferências USB para o driver USB
 Faz a interface com o software cliente, tipicamente o 
sistema operacional
Driver USB:
 Gerencia a comunicação USB
 Gera transações USB a serem executadas como uma 
série de quadros de 1ms;
Driver do controlador do host
 Escalona as transações para serem difundidas no 
barramento USB
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 79
O controlador do host inicia todas as transferências de
dados;
Cada transação no barramento envolve a transmissão 
de quatro pacotes:
 Token: Enviado pelo controlador do host;
 Tipo e direção da transação e endereço do
dispositivo;
 Dados;
 Reconhecimento;
Algumas transações envolvem a transmissão de quatro
pacotes;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 80
Transferência isócrona
 Transferências a uma taxa constante;
Transferência em lote
 Transferências sem exigências de taxa;
Transferência de Interrupção
 Usadas para consultar os dispositivos sobre interrupções
pendentes;
Transferência de Controle
 Configuração dos dispositivos USB;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 81
A comunicação no barramento é baseada em frames de 1 ms;
Cada dispositivo solicita que uma fração da largura de banda seja 
alocada nestes quadros;
A alocação depende da necessidade do dispositivo e é feita 
durante a configuração;
Se não for possível garantir a largura de banda necessária o 
dispositivo não é configurado;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 82
Open Host Controller Interface (OHCI)
 Scatter/gather bus máster;
 Minimiza o uso da CPU Implementa transferências
isócronas;
Universal Host Controller Interface (UHCI)
 Minimiza a complexidade do hardware;
 Utiliza a CPU para controlar o barramento;Extended Host Controller Interface (EHCI)
 USB 2.0;
 Funciona em paralelo com os anteriores;
ENGC50 - Sistemas Microprocessados 
Tópico 3: Interfaces de comunicação 83
• Zanco, Wagner da Silva. Microcontroladores PIC: técnicas de 
sofware e hardware para projetos de circuitos eletrônicos com base 
no PIC16F877A. 2. Ed – São Paulo: Érica, 2008.
• Stallings, William. Arquitetura e organização de computadores : 
projeto para o desempenho. 5.ed. - São Paulo : Prentice Hall, 2002. 
• www.usb.org/home
ENGC50 - Sistemas 
Microprocessados Tópico 3: 
Interfaces de comunicação 84

Continue navegando