






Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Saiba mais sobre endpoints e pipes no protocolo usb, seus tipos, funcionalidades e importância na comunicação entre dispositivos e software no host. Aprenda a diferenciar endpoints unidirecionais e bidirecionais, stream e mensagem/controle, e como eles funcionam juntos para estabelecer a comunicação usb.
Tipologia: Slides
1 / 11
Esta página não é visível na pré-visualização
Não perca as partes importantes!







Endpoint (ponto final de um dispositivo) - Área de memória (Buffer) reservada no Dispositivo para armazenar os dados que trafegam em um tubo (pipe).
Um dispositivo USB pode ter no máximo 16 Endpoins na versão 2.0 do USB. O Endpoint 0 (zero) é reservado para o Host obter informações sobre cada dispositivo conectado ao Bus USB. Através deste Endpoint, o Host pode enviar comandos de controle em baixa velocidade para obter informações descritivas sobre o dispositivo, como: número de série, fabricante, classe, subclasse, versão do Bus USB, nome do produto, tipo do protocolo, números de Endpoints, interfaces, velocidade, tipo de transferência, entre outras. Após a aquisição de todas estas informações sobre o dispositivo, o Host estabelece realmente uma comunicação USB.
Figura 1 - Tipos de Endpoints
Pipe (tubo) - É uma associação entre um Endpoint no dispositivo e um software no Host. Pipe não é algo físico, é uma via de comunicação virtual que só existe em nível de software. Quando um dispositivo USB se conecta ao sistema, o Host cria uma configuração para se comunicação com o dispositivo. Um Pipe pode ser descrito também como uma via de comunicação unidirecional ou bidirecional, onde podem existir Endpoints de entrada(In) e saída (Out). Os Pipes passam a existir quando um dispositivo é configurado pelo Host. Enquanto um dispositivo estiver sendo alimentado e conectado ao controlador Host, sempre existirá um Pipe de controle padrão ( Control Default ) para que esse dispositivo possa fornecer acesso as configurações, como, informações de controle e estado do mesmo.
Figura 2 - Ilustração de um Pipe entre o Host e o dispositivo
Figura 3 - Interface lógica entre o Host e os diversos dispositivos USB através dos Pipes e Endpoints
Há dois tipos de Pipes:
Figura 4 - Pipe Stream Out
Figura 5 -Pipe Stream In
Figura 7 - Janela do Gerenciador de Dispositivos do Windows
No windows, para executar o Gerenciador de Dispositivos , acesse o Painel de Controle ; dê duplo clique no Ícone Sistema ; Clique na guia Hardware e depois no botão Gerenciador de Dispositivos.
O programa Usbready.exe (de uso livre) criado pela Intel para testar se um computador oferece suporte USB; pode-se fazer seu download clicando aqui.
Figura 8 - Janela do programa USBready para checar a existência do sistema USB no PC
Para visualizar os descritores de um dispositivo USB, faça download do programa USB Monitor da HHD Softwares em:
http://www.hhdsoftware.com/download.html.
A Microsoft também disponibiliza um utilitário free (de uso livre), chamado Usbview.exe para visualizar os descritores. Clique aqui para fazer download.
Figura 9 - Tela inicial do programa USB Monitor
Um dos inconvenientes do programa USB Monitor , é que ele não faz a atualização dos dados automaticamente. Se for conectar um novo dispositivo, é preciso fechar o programa e executá-lo novamente, para que os novos dados sejam exibidos na janela.
USB Version: 2.0 (dispositivo compatível com a versão 2.0 do USB) Vendor: 0x0500 (código do vendedor do produto ou dispositivo) Product ID: 0x2000 (identificação do produto ou dispositivo) Product Version : 0x0400 (versão do produto ou dispositivo) Manufacturer: 0x0409 "ROGERCOM" (fabricante do produto ou dispositivo) Product: 0x0409 "Sensor de Temperatura" (nome do produto ou dispositivo) SerialNumber: 0x0409 "RCNPMGL5" (número de série do produto ou dispositivo)
Figura 12 - Exibição do Descritor de Dispositivo através do software USB Monitor
No Descritor de Dispositivo mostrado na figura acima, observe os campos principais:
Os dados acima são gravados na memória opcional Flash 93C46 para personalizar o produto (dispositivo).
O campo SerialNumber é gerado automaticamente por um algoritmo, através do programa gravador de memória Flash.
São através dos campos acima que o driver USB do Sistema Operacional carrega os drivers USB do dispositivo corretamente, após a leitura de um arquivo
. INF. Em aulas futuras iremos entender todo o processo de configuração do arquivo . INF. - Descritores de Configuração - Contém informações sobre as capacidades e funcionalidades do dispositivo, como tipo de alimentação de energia (Bus- powered ou Self-powered), máxima corrente consumida pelo dispositivo, entre outras.
Veja na figura abaixo, algumas informações sobre o Descritor de configuração de um dispositivo:
Figura 13 - Exibição do Descritor de Configuração através do software USB Monitor
Veja no campo Attributes da figura acima, o tipo de alimentação do dispositivo: Bus Powered, e no campo Max Power , a corrente máxima extraída do Bus USB pelo dispositivo: 400mA.
Tabela 1 - Classe de dispositivos USB Símbolo Classe Descrição
1 Áudio
Dispositivos de comunicação.
Dispositivos de Interfaces humanas: Mouse, Teclados, Joysticks, leitor código de barras, etc.
6 Imagem: Scanner, câmera. 7 Impressoras.
Amazenamento de massa: Floppy disk driver, CD-ROM, DVD, ATAPI, SCSI, memória flash. 9 Hub.
10 Interface de Dados.
11 Chip/Smart card.
Vendor-Specific: dispositivos que não entram em qualquer outra classe. Interface Serial RS232, Rede ponto-a-ponto, etc.
No sistema USB o processo de enumeração se refere à conexão, detecção, leitura dos descritivos dos dispositivos e desconexão. É uma atividade ininterrupta. Isso tudo é gerenciado em tempo real pelo controlador Host e o software do sistema. Do ponto de vista do usuário do computador, o processo de enumeração é transparente, desde que se tenha antes instalado no sistema operacional, os drives do fabricante do dispositivo. Após isso, o carregamento dos drives quando um dispositivo é conectado, é automático.
ROGER OM – Curso USB – www.rogercom.com C
Segue abaixo uma seqüência de passos que ocorrem no processo de enumeração:
Figura 16 - Conexão do dispositivo
Figura 17 - Conexão do dispositivo ao Host
Pronto, após todos os passos descritos acima terem sido efetuados, é estabelecida a fase de gerenciamento do dispositivo e das comunicações de dados. Após isso, o dispositivo estará apto a exercer sua função para ao qual foi criado.