Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

28
Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra

Transcript of Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Page 1: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Plataforma RENESAS, I2C, Smart Card

Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra

Page 2: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Objetivo

Implementar solução de leitura e gravação em um smart card utilizando protocolo I2C através da plataforma RENESAS.

Breve tutorial de Utilização de ambiente de desenvolvimento HEW4 (High-performance Embedded Workshop)

Page 3: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Renesas

Renesas

Page 4: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Placa Renesas QSK26A

Área em azul são as portas de expansão da placa utilizadas para mapeamento e implementação do protocolo de comunicação.

Page 5: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Criando o Projeto 1Ao criar um novo projeto selecionar o kit QSK26A

Page 6: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Criando o Projeto 2Criar um projeto vazio

Page 7: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Criando o Projeto 3O wizard de criação automaticamenteInclui arquivos necessários paramapeamento e utilização do hardware.

Page 8: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Criando o Projeto 4

Alterar sessão para M16C_R8C_FoUSB.

Uma sessão contem todas as unidades necessárias para gerenciar vários parâmetros, do ambiente tais como opções do HEW debbuger ,e tambem usado gerenciar a conexão com a plataforma

Page 9: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Criando o Projeto 5Alterar modo de conexão para USB e selecionar o arquivo referente ao processador utilizado.

Page 10: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Criando o Projeto 6Se o dispositivo estiver corretamente conectado via USB, a conexão será estabelecida.

Page 11: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

I2C

I2C

Page 12: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

I2C

I2C utiliza somente duas linhas de comunicação denominadas por: serial data (SDA) e serial clock (SCL) .

As linhas SDA e SCL carregam somente informações digitais, e portanto operam dentro dos limites de 0 a 5 volts. Para que este sistema funcione corretamente, alguns protocolos bem definidos devem ser obedecidos, como por exemplo: o sinal de start (início da transmissão), o sinal de stop (final da transmissão), etc.

Page 13: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

I2C A LINHA DE CLOCK - esta linha é quem fornece a

cadência para que a transmissão serial seja entendida.

Nesta tarefa é a linha de clock quem identifica quando um dado (um bit) pode ser considerado válido - esta situação sempre é definida quando a linha de clock está alta (nível lógico alto). Portanto , sempre que a linha de clock SCL estiver alta , saberemos que a linha SDA possue um dado válido (nível lógico 1 ou 0).

Page 14: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

I2C PROTOCOLO - é um padrão utilizado para que não

haja erros na transferência de dados. Para isto são definidas as condições que devem ser reconhecidas (ACKNOWLEDGE).

O sinal de reconhecimento é quem permite a fluência da transferência dos dados. Assim , por exemplo , após a condição de Start e o endereçamento estarem concluídos, o estágio (escravo) selecionado deverá fornecer o sinal de reconhecimento (ACK).

Page 15: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

I2C Hoje o protocolo I2C - pela sua simplicidade -

tornou-se um standard em comunicação e tem aplicação nos mais variados produtos , dentre eles: TVs , VCRs , áudio , etc.

Será explicado agora a solução de leitura e gravação em um smart card utilizando protocolo I2C através da plataforma RENESAS. Implementado na linguagem C de programação.

I2C

Page 16: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Aplicação

Aplicação

Page 17: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

MapeamentoHardware mapeado em memória utilizaremos a área P6 da placa. São 8 pinos equivalentes a 1 Byte.

Também é necessário a utilização dos pinos VCC e GND

Page 18: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

AplicaçãoMapeamento bit a bit da porta P6 da placa. Para implementar o protocolo I2C utilizaremos os pinos p_0 = clock e p_1 = dados.

Implementação do mapeamento das portas utilizadas. Macros para alternar sinais nas portas.

Page 19: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Aplicação Start, StopSinalização de condição de START e STOP padrao I2C.È necessário um delay entre as trocas de sinal para que seja estabilizado e reconhecido.Codificação do sinal

de START. Sinal de dado baixa enquanto o sinal de clock permanece alto.Codificação do sinal de STOP. Sinal de dado levanta enquanto sinal de clock permanece alto.

Page 20: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Aplicação sinais

Envio do valor “1,” pois quando o clock esta alto o valor no barramento é um valor válido.

Envio do valor “0,” pois quando o clock esta alto o valor no barramento é um valor válido.

Page 21: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Aplicação Ack Nack

Após cada byte enviado um sinal de ACK é enviado. Isso sinaliza ao transmissor que o sinal foi recebido com sucesso, e outro byte pode ser enviado. Todos os pulsos de clock incluem um ack. No gráfico de sinal acima se verifica essa afirmação.

Page 22: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Aplicação Envio de dadoO envio de um dado segue a seguinte sequencia:O dispositivo master ajusta a condição inicial.O dispositivo master envia 7 bis de endereçamento.O dispositivo master envia o 8o bit, R/W.O dispositivo slave envia o sinal de ACK (Acknowledge).O dispositivo master (ou slave) envia pacotes de 8 bits de dados, sempre seguidos de um sinal ACK enviado pelo dispositivo slave (ou master) confirmando a recepção.O dispositivo master encerra a comunicação.

Page 23: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Aplicação Envio de dado

O significado dessa seqüência de bits após o start, é que o periférico responsável pelo dado que será enviado está selecionando o dispositivo para gravação, este por sua vez reconhece essa seqüência e aguarda o byte de endereço para armazenamento e permite acesso a sua área de memoria, e depois de recebido responde com um ACK.

Page 24: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Aplicação Lendo um Dado

Seleciona dispositivo para leitura dos dados, dispositivo retorna um ACK.

Inicia processo de recebimento dos dados

Ao final do processo, a variável “aux2” contem o dado que estava no primeiro endereço de memória no dispositivo.

Page 25: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

DificuldadesDificuldade ao encontrar

delay de ajuste para implementação correta do protocolo I2C.

Page 26: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Bibliografia NXP Semiconductors.

(http://www.nxp.com/products/interface_control/i2c/facts/)

NXP Semiconductors. (http://www.nxp.com/products/all_usermanuals/)

I2C Bus site (http://www.i2c-bus.org/) Renesas product center

(http://www.renesasuniversity.com/scripts/pc2/university/pc_technology_summary.pl?AREA=38&CENTER=13&SID=19797.19807.20051222&cf=pc-university&obj=652)

Page 27: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Bibliografia

Bernardo Berra [email protected]

Marlon Lopes [email protected]

Vinicius Lemos [email protected]

Page 28: Plataforma RENESAS, I2C, Smart Card Acadêmicos: Marlon Lopes, Vinicius Lemos, Bernardo Berra.

Fimmmmmm