Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DEVICE AND METHOD OF ELETRONIC INTERFACING THROUGH USB (UNIVERSAL SERIAL BUS) CONNECTIVITY TYPE
Document Type and Number:
WIPO Patent Application WO/2011/107923
Kind Code:
A1
Abstract:
Electronic interfacing device and method to realize an USB (Universal Serial Bus) connectivity type between a peripheral apparatus (7) and a host (6), eliminating the need of development and installation of custom device drivers, reducing costs of development and maintenance and simplifying the utilization of the system. The interfacing device (1) is able to store and share files in accordance with USB MSC (Universal Serial Bus Mass Storage Class) specifications (2) and simultaneously to implement a real-time communication channel between a host (6) and a peripheral apparatus (7). The said communication channel is established through a system of translation of the data sent from the said host (6), related to the read and write operations performed on a virtual file (4) resident in an own File System (3), allowing the direct manipulation of the input and output signals (5) related to the said peripheral apparatus (7).

Inventors:
BRONDANI DANIEL (BR)
Application Number:
PCT/IB2011/050831
Publication Date:
September 09, 2011
Filing Date:
February 25, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BRONDANI DANIEL (BR)
International Classes:
G06F12/00; G06F13/00
Foreign References:
US20070100893A12007-05-03
EP1811351A12007-07-25
US20060023253A12006-02-02
Download PDF:
Claims:
REIVINDICAÇÕES

1. Dispositivo de interfaceamento eletrônico (1) de tipo compatível com as especificações definidas na norma USB MSC (Universal Serial Bus Mass Storage Class) (2) e que permite o intercâmbio de informações entre um aparelho periférico (7) e um host (6), incluindo um Sistema de Arquivos (3) e caracterizado pelo fato de que no dito Sistema de Arquivos (3) é residente um arquivo virtual (4) e que meios eletrônicos de processamento são capazes de traduzir em tempo real os dados das operações de leitura e escrita efetuadas pelo dito host (6) no dito arquivo virtual (4) respectivamente aos sinais de entrada e saída (5) relativos ao dito aparelho periférico (7).

2. Dispositivo segundo a reivindicação 1, caracterizado pelo fato de que os ditos meios eletrônicos de processamento compreendem um microcontrolador (17) conectado a uma memória (18).

3. Dispositivo segundo a reivindicação 2, caracterizado pelo fato de que o dito Sistema de Arquivos (3) é armazenado na dita memória (18).

4. Dispositivo segundo a reivindicação 2 ou 3, caracterizado pelo fato de que o dito microcontrolador (17) e que a dita memória (18) são incorporados em um módulo eletrônico (15).

5. Dispositivo segundo a reivindicação , caracterizado pelo fato de que compreende também ao menos uma porta de comunicação bidirecional (9) que é apropriada para ser conectada ao dito aparelho periférico (7) mediante terminais do dito módulo eletrônico (15) e ao menos uma porta USB (8) para conexão ao dito host (6) mediante outros terminais do dito módulo eletrônico (15).

6. Dispositivo segundo qualquer uma das reivindicações anteriores, caracterizado pelo fato de que o dito Sistema de Arquivos (3) é acessível seja pelo dito host (6), seja pelo dito aparelho periférico (7), permitindo o compartilhamento de arquivos nele armazenados.

7. Dispositivo segundo qualquer uma das reivindicações anteriores, caracterizado pelo fato de que é fisicamente integrado ao dito aparelho periférico (7).

8. Dispositivo segundo qualquer uma das reivindicações anteriores, caracterizado pelo fato de que os ditos sinais de entrada e saída (5) são apropriados para serem formatados segundo um protocolo de comunicação serial ou paralela, síncrona ou assíncrona.

9. Dispositivo de interfaceamento eletrônico (1) de tipo compatível com as especificações definidas na norma USB MSC (Universal Serial Bus Mass Storage Class) (2) e que permite o intercâmbio de informações entre um aparelho periférico (7) e um host (6), caracterizado pelo fato de que inclui meios eletronicos de processamento capazes de traduzir em tempo real os dados das operações de leitura e escrita efetuadas pelo dito host (6) em modalidade RAW respectivamente aos sinais de entrada e saída (5) relativos ao dito aparelho periférico (7) .

10. Método de interfaceamento eletrônico de tipo compatível com as especificações definidas na norma USB MSC (Universal Serial Bus Mass Storage Class) e que permite o intercâmbio de informações entre um aparelho periférico (7) e um host (6), usando um Sistema de Arquivos (3) armazenado em um dispositivo de interfaceamento (1), caracterizado pelo fato de que compreende uma primeira fase em que no dito Sistema de Arquivos (3) é armazenado um arquivo virtual (4) e uma segunda fase na qual meios eletronicos de processamento traduzem em tempo real os dados das operações de leitura e escrita efetuadas pelo dito host (6) no dito arquivo virtual (4) respectivamente aos sinais de entrada e saída (5) relativos ao dito aparelho periférico (7).

11. Método segundo a reivindicação 10, caracterizado pelo fato de que um processador (10) do dito aparelho periférico (7) é conectado ao dito dispositivo de interfaceamento (1) através de uma porta de comunicação bidirecional (9), e que o dito host (6) acessa o dito Sistema de Arquivos (3) mediante o protocolo padrão USB MSC, através de uma porta USB (8), usando as funções nativas do sistema operacional (12) do dito host (6), e que os aplicativos software (14) executados pelo dito host (6), que podem também residir diretamente no dito Sistema de Arquivos (3), acessam o dito arquivo virtual (4) usando as ditas funções nativas, ou através de uma biblioteca dedicada (13).

12. Método segundo a reivindicação 11, caracterizado pelo fato de que o dito dispositivo de interfaceamento (1) é apropriado para uso nas duas seguintes diferentes modalidades, segundo o estado de uma linha VBUS, que indica se o dito host (6) está conectado ou não ao dito aparelho periférico (7): a) quando a dita linha VBUS é a nível lógico alto, com o dito host (6) conectado através da porta USB (8) ao dito aparelho periférico (7), o dito dispositivo de interfaceamento (1) atua como uma ponte entre os sinais (5) provenientes do aparelho periférico (7) e o aplicativo software (14) executado pelo host (6); b) quando a dita linha VBUS é a nível lógico baixo, com o dito host (6) não conectado ao dito aparelho periférico (7), o dito aparelho periférico (7) pode acessar o dito Sistema de Arquivos (3) do dito dispositivo de interfaceamento (1) usando comandos periféricos.

13. Método como na reivindicação 10, 11 ou 12, caracterizado pelo fato de que, quando um cabo USB do dito aparelho periférico (7) interfaceado pelo dispositivo de interfaceamento (1) é inserido no dito host (6), o dito host (6) detecta a presença do aparelho como uma normal interface de armazenamento em massa e a instala automaticamente sem a necessidade de medidas adicionais por parte do usuário.

Description:
DISPOSITIVO E MÉTODO DE INTERFACEAMENTO ELETRÔNICO MEDIANTE CONECTIVIDADE DE TIPO USB (UNIVERSAL SERIAL BUS)

Campo da invenção

A presente invenção se refere a um dispositivo e a um método de interfaceamento eletrônico destinado a facilitar a implementação e a utilização de uma conectividade de tipo USB (Universal Serial Bus) entre um aparelho periférico, ou outro dispositivo eletrônico, e um host, que pode ser qualquer computador eletrônico, incluindo PDAs, telefones celulares, ou outros, especialmente nos casos em que se deseja obter a funcionalidade de armazenamento e compartilhamento de arquivos combinada simultaneamente a um canal de comunicação em tempo real entre o host e o aparelho periférico. Fundamentos da invenção

É notório o padrão de comunicação serial USB, que foi projetado para permitir a conexão de diferentes periféricas informáticas, sejam essas aparelhos ou dispositivos, ao host, utilizando apenas tipos de conectores padronizados, na prática substituindo as várias portas paralelas e seriais anteriormente existentes. Além disso, o referido padrão USB tem o objetivo de otimizar a instalação das periféricas através da funcionalidade plug-and-play, ou seja, a capacidade de conectar e desconectar as periféricas sem necessitar reiniciar o sistema operacional do host.

As especificações técnicas do padrão USB definem um conjunto de interfaces que identificam os tipos de periféricas que podem ser implementadas. Por exemplo, periféricas destinadas ao armazenamento de arquivos seguem as normas da classe MSC (Mass Storage Class). Já as regras para os aparelhos de comunicação são descritas na classe CDC (Communication Device Class). Uma periférica que dispõe de múltiplas interfaces é conhecida como uma periférica composta. Também é notório entre os desenvolvedores informáticos que a gestão de dispositivos CDC e de periféricas compostas é problemática em alguns sistemas operacionais.

Para permitir que um sistema operacional pilote uma interface hardware deve ser compilado um conjunto de instruções e procedimentos para esse fim, ou seja deve ser criado o assim chamado driver de dispositivo. Os drivers das interfaces mais frequentemente usadas geralmente já são carregados nos principais sistemas operacionais. No entanto, para dispositivos não padronizados é necessário desenvolver específicos drivers de dispositivo e consequentemente também é necessário operacionalizar a sua distribuição e instalação.

No desenvolvimento de periféricas personalizadas, esses problemas recém descritos dificultam a automação do aparelho eletrônico porque para iniciar o seu funcionamento são necessárias mais intervenções do usuário. De fato, para muitos dispositivos com conectividade USB, antes de seu uso efetivo é imprescindível a instalação de drivers e aplicativos software, que devem ser distribuídos através de outros meios ou canais de mídia, tais como a Internet ou CD/DVD. Evidentemente isto representa um considerável aumento nos custos de desenvolvimento, produção e gestão, problemas logísticos de distribuição e uma séria limitação para a funcionalidade automática plug-and-play, tornando difícil a utilização dos dispositivos sobretudo se destinados a uso em diversos ambientes.

O documento US-A-2004/268040 revela um dispositivo de armazenamento externo que inclui uma memória não-volátil para armazenar dados digitais, como um Sistema de Arquivos, uma porta USB para disponibilizar uma interface com um aparelho externo, e um slot de expansão para o acolhimento de um módulo de memória convencional. O dispositivo de armazenamento externo disponibiliza canais de acesso em conformidade com as especificações USB MSC assim que o aparelho externo acessa o meio de armazenamento não-volátil e o módulo de memória, inserido no slot de expansão, através da porta USB. Quando o dispositivo de armazenamento externo recebe do aparelho externo um comando de acesso ao meio através da porta USB, o dispositivo de armazenamento externo determina se o comando de acesso ao meio tem como objetivo acessar o meio de armazenamento não- volátil ou o módulo de memória inserido no slot de expansão interpretando o comando de acesso ao meio, e disponibiliza um serviço de acesso correspondente ao comando de acesso ao meio.

Sumário da invenção

A presente invenção foi concebida e projetada para resolver os problemas anteriormente descritos e tem o objetivo de eliminar a necessidade de desenvolvimento e instalação de drivers personalizados e de facilitar a conexão de diversos dispositivos eletrônicos, portáteis ou não, que necessitam do estabelecimento um canal de comunicação a outros aparelhos que tenham conexão USB, como computadores, PDAs, telefones celulares e outros, tudo de maneira automática e transparente ao usuário que assim é capaz de operá-los plenamente sem ter de intervir manualmente.

Este objetivo é alcançado através do dispositivo de interfaceamento eletronico segundo a presente invenção, o qual é adequado para permitir o intercâmbio de informações entre um aparelho periférico e um host e inclui seja um Sistema de Arquivos, no qual é residente um arquivo virtual, ou seja existente apenas em forma virtual, seja meios eletrônicos de processamento, que são capazes de traduzir em tempo real os dados das operações de leitura e escrita efetuadas pelo dito host no dito arquivo virtual, respectivamente aos sinais de entrada e saída relativos ao dito aparelho periférico. Os supracitados meios eletrônicos de processamento compreendem, por exemplo, um microcontrolador conectado a uma memória não-volátil.

Portanto, o objetivo anteriormente mencionado é alcançado através da implementação de uma comum interface de armazenamento em massa USB MSC, muito difundida e suportada por quase todos os sistemas operacionais, oportunamente acompanhada de um arquivo virtual, ou seja não existente fisicamente na memória, o qual atua como buffer do sistema de comunicação. De fato, ao invés de gravar os dados na memória não-volátil, as operações de leitura e escrita efetuadas no arquivo virtual manipulam diretamente os sinais de entrada e saída através dos quais se deseja comunicar em tempo real. Estes sinais manipulados podem ser formatados segundo o protocolo mais apropriado a integrar-se ao aparelho periférico, por exemplo o usual protocolo de comunicação serial assíncrona UART (Universal Asynchronous Receiver- Transmitter). Assim, além de armazenar e compartilhar arquivos, os aplicativos executados pelo host podem comunicar diretamente com o aparelho periférico através de um protocolo apropriado, usando apenas simples operações de leitura e escrita em arquivos.

Como alternativa à implementação do arquivo virtual, o dispositivo de interfaceamento segundo a presente invenção pode detectar as operações efetuadas pelo host no seu Sistema de Arquivos em modalidade RAW e analogamente manipular os sinais de entrada e saída da interface.

De acordo com uma outra característica da presente invenção, o método de interfaceamento eletrônico, segundo as especificações definidas na norma USB MSC, compreende uma primeira fase em que no Sistema de Arquivos é configurado um arquivo virtual, e uma segunda fase em que os meios eletrônicos de processamento traduzem em tempo real os dados das operações de leitura e escrita efetuadas pelo host no dito arquivo virtual respectivamente aos sinais de entrada e saída relativos ao aparelho periférico. Descrição das figuras

As características e as vantagens da presente invenção serão evidentes a partir da seguinte descrição detalhada de uma forma de realização preferida, ilustrada a título de exemplo sem limitação, com o auxílio dos desenhos anexados, nos quais:

- Figura 1 representa um diagrama de blocos de um dispositivo de interfaceamento segundo a presente invenção;

- Figura 2 é uma ilustração de uma forma de realização do dispositivo de interfaceamento da Figura 1 integrado em um aparelho periférico;

- Figura 3 é uma vista superior de um módulo eletrônico que representa uma forma de realização prática do dispositivo de interfaceamento da Figura 1;

- Figura 4 é um diagrama de blocos de uma implementação prática do módulo eletrônico da Figura 3;

- Figura 5 ilustra o circuito eletrônico do módulo eletrônico da Figura 3.

Com referência às Figuras 1 e 2, um dispositivo de interfaceamento (1), segundo a presente invenção, é apropriado para implementar um canal de comunicação em tempo real (11) entre um genérico host (6), que pode ser qualquer computador ou similar, e um genérico aparelho periférico (7), por sua vez equipado com um próprio microprocessador ou microcontrolador embarcado (10). Segundo uma característica da presente invenção, dentro do dispositivo de interfaceamento (1), compatível com as especificações USB MSC (2), é implementado o relativo Sistema de Arquivos (3), no qual é criado um arquivo virtual (4) capaz de manipular os sinais de entrada e saída (5), segundo os dados das operações de leitura e escrita efetuadas pelo host (6) no dito arquivo virtual (4), habilitando um canal de comunicação em tempo real (11) entre o host (6) e o aparelho periférico (7); além disso o Sistema de Arquivos (3) é acessível seja pelo host (6), seja pelo aparelho periférico (7), permitindo o compartilhamento dos arquivos armazenados. Na forma de realização da Figura 2 o processador embarcado (10) do aparelho periférico (7) conecta-se ao dispositivo de interfaceamento (1) mediante um canal de comunicação bidirecional (9); o host (6) acessa o Sistema de Arquivos (3) do dispositivo de interfaceamento (1) mediante o protocolo padrão USB MSC, através da porta USB (8), usando as funções nativas do seu sistema operacional (12); os aplicativos software (14) executados pelo host (6), que no entanto podem também residir diretamente no Sistema de Arquivos (3) do dispositivo de interfaceamento (1), acessam o arquivo virtual (4) deste último utilizando as funções nativas do sistema operacional (12), ou simplesmente através das funções de uma biblioteca dedicada (13). Desta forma, sem usar drivers adicionais, estabelece-se um canal de comunicação em tempo real (11) diretamente entre o aplicativo software (14) e o processador embarcado (10). Descrição de uma forma de realização

Na forma de realização aqui ilustrada a título de exemplo, o dispositivo de interfaceamento (1) compreende meios eletrônicos de processamento, os quais são implementados, neste caso, em um módulo eletrônico (15) (Figuras 3, 4 e 5). Este último é montado em uma placa de circuito impresso (16) (Figura 3) de forma substancialmente quadrada e de dimensões reduzidas, por exemplo cerca de lOmm por lOmm e pode ser integrado dentro do mesmo aparelho periférico (7). O módulo eletrônico (15) compreende um microcontrolador (17) (Figuras 3 e 5), por exemplo da família 8051, equipado com um controlador USB integrado e conectado a uma memória (18) (Figura 5), por exemplo de tipo não- volátil a estado sólido tipo flash, e um Sistema de Arquivos integrado (3). Os oito terminais são espaçados de acordo com o clássico encapsulamento DIP8, cujos terminais são descritos na Tabela 1. Na Figura 5 os oito terminais 1-8 são representados em um conector (19). Terminal Nome Tipo Descrição

1 D- E/S USB Data -

2 VBUS Entrada Entrada VBUS

3 VDD PWR Alimentação 5V

4 GND PWR Alimentação Massa

5 GND PWR Alimentação Massa

6 RX Entrada UART Recepção

7 TX Saída UART Transmissão

8 D+ E/S USB Data +

Tab. 1

Por exemplo, o módulo eletrônico (15) pode ter as seguintes características técnicas:

- USB 2.0 Mass Storage Class

- Sistema de Arquivos: FAT16

- Dimensão da memória: 2MB (expansível)

- Tensão de alimentação típica: 5.0V

- Sinais lógicos: níveis TTL/CMOS

- Baud rate: 9600, 19200, 38400, 57600, 115200, 921600 bps

- Temperatura: 0°C a 70°C

- Encapsulamento: compatível com DIP8

De acordo com a Figura 4, o módulo eletrônico (15) compreende também uma porta de comunicação de tipo UART (9), que é apropriada para ser conectada ao aparelho periférico (7) mediante os terminais TX e RX, e uma porta USB (8) para conexão ao host (6) mediante os terminais D+, D- e VBUS.

A título de exemplo, o dispositivo de interfaceamento (1) descrito acima pode operar nas duas modalidades seguintes, segundo o estado da linha VBUS, que indica na prática se o host (6) está conectado ou não: a) quando a linha VBUS está no nível lógico alto, ou seja o host (6) está conectado ao aparelho periférico (7) através da porta USB (8), na porta UART (9) é expedida a mensagem "Serial Bridge Mode" e o dispositivo de interfaceamento (1) funciona como uma ponte entre os sinais (5) provenientes do aparelho periférico (7) e as funções do aplicativo software (14) executado pelo host (6);

b) quando a linha VBUS está no nível lógico baixo, ou seja o host (6) não está conectado, é expedida a mensagem "File System Mode" e o aparelho periférico (7) pode acessar o Sistema de Arquivos (3) utilizando os comandos periféricos.

Quando o cabo USB do aparelho periférico (7) interfaceado pelo dispositivo de interfaceamento (1) é inserido no host (6), este último detecta a presença do aparelho como uma normal interface de armazenamento em massa e a instala automaticamente sem a necessidade de medidas adicionais por parte do usuário. Os aplicativos software (14) executados pelo host (6) podem comunicar em maneira transparente com o aparelho periférico (7) através das funções geridas oportunamente pela biblioteca dedicada (13). Além disso o aplicativo software (14) pode residir no Sistema de Arquivos (3) do mesmo dispositivo de interfaceamento (1), tornando este último não apenas plug-and-play mas também diretamente operativo em qualquer plataforma.

Comandos periféricos: os comandos periféricos podem ser transmitidos através da porta UART (9) quando a modalidade "File System Mode" está habilitada, ou seja quando o host (6) não está conectado. Por exemplo os seguintes comandos podem ser executados pelo aparelho periférico (7):

- Read File: Lê o conteúdo de um arquivo no Sistema de Arquivos (3).

- Write File: Adiciona dados a um arquivo no Sistema de Arquivos (3).

- Delete File: Apaga um arquivo no Sistema de Arquivos (3).

- Format: Formata a memória do módulo eletrônico (18).

- Erase: Apaga e formata a memória do módulo eletrônico (18). Funções da biblioteca dedicada: quando o host (6) está conectado, e portanto a modalidade "Serial Bridge Mode" está habilitada, os aplicativos software (14) executados pelo host (6) podem usar a biblioteca dedicada (13) para comunicar diretamente com o aparelho periférico (7) e para configurar os parâmetros da interface. Por exemplo as seguintes funções podem ser utilizadas:

- Connect: Conecta ao dispositivo de interfaceamento (1).

- Disconnect: Desconecta do dispositivo de interfaceamento (1).

- Read: Recebe os dados enviados pelo aparelho periférico (7).

- Write: Escreve os dados a serem enviados ao aparelho periférico (7).

- GetConfig Obtém o bloco de configuração.

- SetConfig: Define o bloco de configuração.

Bloco de configuração: os dados de configuração são armazenados em um determinado bloco de memória, que pode ser lido e escrito pelas respectivas funções GetConfig e SetConfig, e contém os seguintes parâmetros: VID (Vendor ID da interface USB), PID (Product ID da interface USB), baud rate (taxa de transmissão da interface UART). A partir da descrição anterior é evidente que o dispositivo de interfaceamento (1) segundo a presente invenção compreende um Sistema de Arquivos (3) no qual reside um arquivo virtual (4) e que meios eletrônicos de processamento são capazes de traduzir em tempo real os dados das operações de leitura e escrita efetuadas pelo host (6) no dito arquivo virtual (4), respectivamente aos sinais de entrada e saída (5) relativos ao aparelho periférico (7).

Entende-se que ao dispositivo de interfaceamento (1) e ao relativo método até agora descritos podem ser feitas modificações e/ou acréscimos de componentes, ou de fases, sem ir além do escopo da presente invenção. É também claro que, embora a presente invenção tenha sido descrita com referência a um exemplo específico, uma pessoa competente no ramo poderá certamente realizar muitas outras formas equivalentes de dispositivos ou métodos de interfaceamento com as características expressas nas reivindicações seguintes e portanto todos abrangidos no âmbito de proteção definido por essas.