A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Programação de Periféricos I²C

Apresentações semelhantes


Apresentação em tema: "Programação de Periféricos I²C"— Transcrição da apresentação:

1 Programação de Periféricos I²C
Newtow Ediglê Junior Albert Einstein Bell Professor: Eduardo Bezerra Programação de Periféricos I²C Aplicações Exemplos: C e VHDL

2 Características Gerais
Barramento I²C = Inter-IC bus Desenvolvido pela Philips na década de 80 2 barramentos simples bidirecionais: serial data (SDA) serial clock (SCL) Suporta mais de um mestre quando existe um algoritmo de arbitragem Comunicação Mestre-Escravo Comunicação entre dois dispositivos de cada vez. Cada IC no barramento é identificado pelo seu próprio endereço Um escravo pode ser um: receiver-only device receiver and sender device

3 Protocolo de Comunicação
A point to point communication does not require a Select control signal An asynchronous communication does not have a Clock signal Data, Select and R/W signals can share the same line, dependingon the protocol Notice that Slave 1 cannot communicate with Slave 2 or 3 (except via the ‘master’)Only the ‘master’ can start communicating. Slaves can ‘only speak when spoken to’

4 Protocolo de Comunicação
1) Esperar até não haver atividade no barramento. SDA e SCL devem estar em nível alto. O barramento está desocupado. 2) Colocar uma mensagem no barramento avisando que ele será usado – ‘Eu sou o dono do barramento’ (START - borda de descida no SDA enquanto SCL=1). 3) Dar um pulso de clock no barramento de clock (SCL). Esse pulso servirá de referência por todos os periféricos para a captura de cada bit no barramento de dados (SDA). O dado no barramento de dados (SDA) deve ser válido, ou seja, estar correto, quando houver uma borda de subida no barramento de clock (SCL). 4) Escrever no barramento de dados o endereço específico do periférico, com o qual o mestre deseja se comunicar, serialmente.

5 Protocolo de Comunicação
5) Envia mensagem ENVIAR ou RECEBER (1 bit). Após isso, o barramento não é mais read/write. Pede um sinal ACK do escravo. 6) Escravo manda ACK quando está pronto para comunicação. 8) A transferência de dados é feita de 8 em 8 bits. Depois de cada palavra de 8 bits recebida, um sinal ACK é enviado para dizer que a comunicação está OK. 9) Quando todos os dados foram enviados, é enviado um sinal de STOP (borda de subida no SDA enquanto SCL=1).

6 Protocolo de Comunicação
Exceção: Para uma chamada geral o endereço passado deve ser: R/W=0;

7 Exemplos: C VHDL


Carregar ppt "Programação de Periféricos I²C"

Apresentações semelhantes


Anúncios Google