Informações sobre o curso.
VNC1L
Host USB
Por: Antônio Rogério Messias
Página 1 de 6     Home  Índice  
Conectando um Pen-drive a um Microcontrolador (Projeto Estação Pen-drive).
Para uso particular ou educacional.
Copyright(c) 1999-2007 ROGERCOM
Todos os direitos reservados.


INTRODUÇÃO

       O projeto aqui descrito foi baseado no VNC1L-1A da FTDI/Vinculum, um Chip Host USB com vários recursos agregados.
       Não é possível em um único artigo, explorar todos os recursos desse componente, mas iremos explorar através de um projeto bastante interessante e funcional, o recurso de comunicação com um Pen-drive (Flash Disk).
       O VNC1L funciona de várias formas, mediante a gravação em sua memória de programa, de um firmware (arquivo .ROM) adequado ao propósito desejado. Atualmente a FTDI disponibiliza em seu site os seguintes firmwares para gravar no VNC1L:

VDAP (Vinculum Disk And Peripheral interface) - Firmware Interface entre um Microcontrolador, Flash Disk ou um periférico USB ou FTDI;
VDPS (Vinculum Disk And Peripheral interface) - Firmware usado para interfacear um micocontrolador a uma porta Host USB no PC.
VDIF (Vinculum Disk Interface FTDI) - Firmware Interface entre um Flash Disk e periféricos FTDI.
VCDC (Communication class device) Firmware para trabalhar com dispositivos USB de classe de comunicação (Modem etc.);
VMSC (Music player) - Firmware com recurso para manipular arquivos de música MP3;
VF2F (Disk to disk copier) - Firmware com funções para copiar dados de um Flash Disk para outro.

       Pode ser conectada uma diversidade de dispositivos de classes USB nas portas USB do VNC1L. Cada versão de código de firmware permite uma combinação diferente de dispositivos.
       Além de vários pinos de propósitos gerais, o VNC1L disponibiliza 2 portas USB tipo "A" (Host).
       Para enriquecer nosso projeto, iremos agregar ao mesmo, um sensor de Temperatura/Umidade da Sensirion o SHT75, sensor de altíssima precisão, um CI relógio/calendário da Philips o DS1307 (I2C), um Display LCD de texto 2x16 com backlight e um microcontrolador PIC 18F452.
      Além de gravar os dados no Pen-prive, o PIC18452 transmite os mesmos em intervalos de 1 segundo através da UART (RS232), onde é possível com o uso de um conversor tipo CI MAX232, enviar os dados para um PC. Também é possível agregar um módulo de rádio freqüência (RF) tipo ZigBee™, entre outros, e transmitir os mesmos sem fio.

Figura 1 - Visão parcial do sistema estação Pen-drive

Figura 2 - Visão geral do sistema estação Pen-drive

       Na figura acima é possível ver os componentes que fazem para de todo o sistema. O PC será de suma importância no desenvolvimento do projeto, para gravar o microcontrolador e atualizar a data e hora do relógio. Depois da conclusão do projeto, o uso do PC será opcional, e sua maior utilidade seria armazenar os dados recebidos via Serial RS232.
       Os dados como Temperatura, Umidade, Ponto de Orvalho, Data e hora, espaço no Pen-drive e intervalo de gravação no Pen-drive podem ser vistos no display LCD, através do pressionamento de um único botão (BUT1 - botão muda tela). Há mais dois botões (BUT Inc) e (BUT Dec), respectivamente Incremento e decremento, usados para aumentar ou diminuir o intervalo de gravação dos dados no Pen-drive. O intervalo de tempo mínimo para gravar os dados é de 1 segundo, e o máximo são de 256 segundos (em torno de 4 minutos).

Figura 3 - Exemplo de uma caixa para comportar os sistemas

       Na figura acima temos uma visão de como poderá ser o design do projeto, esta ilustração é somente um exemplo, fica a gosto de cada um a definição final da aparência do sistema.

Figura 4 - Painel solar
Figura 5 - Gerador eólico

       Se no local onde o sistema for instalado não houver energia Elétrica, é importante antes projetar uma fonte de energia alternativa como a Solar ou mesmo Eólica. A energia gerada por essas fontes deve ser armazenada em baterias, para então fornecer energia ao sistema durante o dia e a noite.

Figura 6 - Regulador de tensão


Vejamos agora o CI VNC1L e suas características

       Nas ilustrações abaixo vemos o CI VNC1L e a numeração/descrição de cada pino:

Pinos do Vinculum VNC1L
Figura 7
Figura 8

 

Principais características do VNC1L-1A

 

- 2 controladoras de DMA para aceleração do hardware;
- Microcontrolador interno de 8/32 bits;
- Multiplicador de clock integrado de 12MHz para 48MHz;
- Circuito power-on-reset integrado com pino de entrada RESET#;
- Protocolo de controle USB interno no chip;
- 64KBytes de memória de programa Flash ROM embutida;
- 4KBytes internos de memória de Dados SRAM;
- 2 portas tipo "A" USB 2.0 independentes Low speed / Full speed, USB Host;
- Interface PS/2 para teclado e mouse;
- Biblioteca de firmware fornecida pela FTDI para fácil atualização em campo;
- Programa para atualizar o firmware fornecido pela FTDI, via UART serial ou através de um Pen-drive;
- Interface UART para entrada/Saída de Dados;
- Programação do firmware;
- Pino de controle PROG# para programação do firmware;
- Interface para o Monitor de comandos, via SPI, UART Serial ou FIFO;
- Entrada de alimentação segura de 5v e operando a 3,3v;
- Até 28 GPIO pinos de I/O de dados e monitor de comandos;
- Suporta dispositivos de configuração USB Bus powered, self-powered e high-power bus powered;
- Completamente compatível com especificação de USB 2.0;
- CI disponível em tamanho compacto LQFP de 48 pinos, livre de chumbo (Pb-free);
- USB Host e slave compatível com alta velocidade (12 Mbps), e baixa velocidade (1.5 Mbps)


Versão do firmware VDAP usado no VNC1L para o nosso projeto:
Nome do Arquivo:
VDAPFUL_V3_56.ROM
Versão:
MAIN 03.56VDAPB
RPRG 1.00R

Figura 9 - Hardware gerenciado pelo firmware VDAP

       A Figura 9 acima mostra um esquema de hardware que pode ser gerenciado pelo firmware VDAP. Esse firmware, além de gerenciar um Pen-drive poderá também gerenciar um periférico USB escravo, como por exemplo, um circuito baseado num chip FT232, FT232, FT245, FT2232, ou mesmo um periférico tipo uma impressora USB, Modem, etc. Para o nosso projeto iremos explorar somente a Porta 2 do VNC1L, onde será conectado um Pen-drive, ou seja, uma memória de armazenamento de massa (BOMS Flash Disk).
       A interface de comunicação (bus de dados) entre o VNC1L e um microcontrolador pode ser: Serial UART, Paralela FIFO ou SPI, para o nosso projeto, a interface Serial UART foi a escolhida, pois não precisamos de altas velocidades para gravar os dados no disco. A velocidade máxima da interface Serial UART do VNC1L é de 3Mbps. Já nas interfaces Paralela FIFO ou SPI, a velocidade é muito superior.
       O Monitor do VNC1L é uma interface de linha de comando que permite dar e receber instruções ao VNC1L, através de uma das três interfaces citadas acima.

 


Volta à página principal. 
 Página 2.

Índice dos artigos.

http://www.rogercom.com
© Copyright, 1999-2007 ROGERCOM - Antonio Rogério Messias - rogercom@rogercom.com
Todos os Direitos Reservados - All Rights Reserved.