o protocolo 1-wire e can - geocities.ws · up para alimentar a linha de transmissão. da mesma...

5
O protocolo 1-WIRE e CAN 1 - Introdução Os protocolos mais utilizados atualmente para comunicação entre circuitos integrados são o SPI e o I2C. Porém, estes não são os únicos. Em determinadas condições o uso destes dois protocolos não são adequados. Quando não se exige uma taxa de transmissão elevada, podemos utilizar o protocolo 1-wire que utiliza somente um fio + terra para comunicação. Para aplicações automotivas a comunicação entre circuitos sem o uso de microcontrolador pode ser realizada utilizando o protocolo CAN. É exatamente desse assunto que se trata esse material. 2 – Protocolo 1-WIRE O protocolo 1-WIRE foi desenvolvido pela Dallas Semiconductors Corp. com um conceito similar ao I2C porém utilizando somente um fio e o terra. Como exemplo vamos considerar o circuito integrado medidor de temperatura digital programável DS18D20 da Maxim Integrated. Fig. 1 – Circuito integrado Maxim 18B20 – Termômetro digital. Este circuito integrado possui somente 3 terminais e mede com uma precisão de ±0,5ºC temperaturas entre -10ºC e 80ºC. Cada integrado possui um único código serial de 64bits que o identifica possibilitando o uso de vários dispositivos em paralelo comunicando em um único barramento. Fig. 2 – Ligação física entre os dispositivos.

Upload: doanthuy

Post on 26-Dec-2018

231 views

Category:

Documents


0 download

TRANSCRIPT

O protocolo 1-WIRE e CAN

1 - Introdução

Os protocolos mais utilizados atualmente para comunicação entre circuitos integrados são o SPI e o I2C. Porém, estes não são os únicos. Em determinadas condições o uso destes dois protocolos não são adequados. Quando não se exige uma taxa de transmissão elevada, podemos utilizar o protocolo 1-wire que utiliza somente um fio + terra para comunicação. Para aplicações automotivas a comunicação entre circuitos sem o uso de microcontrolador pode ser realizada utilizando o protocolo CAN. É exatamente desse assunto que se trata esse material.

2 – Protocolo 1-WIRE

O protocolo 1-WIRE foi desenvolvido pela Dallas Semiconductors Corp. com um conceito similar ao I2C porém utilizando somente um fio e o terra. Como exemplo vamos considerar o circuito integrado medidor de temperatura digital programável DS18D20 da Maxim Integrated.

Fig. 1 – Circuito integrado Maxim 18B20 – Termômetro digital. Este circuito integrado possui somente 3 terminais e mede com uma precisão de ±0,5ºC temperaturas entre -10ºC e 80ºC. Cada integrado possui um único código serial de 64bits que o identifica possibilitando o uso de vários dispositivos em paralelo comunicando em um único barramento.

Fig. 2 – Ligação física entre os dispositivos.

Conforme pode ser visualizado, o protocolo 1-Wire utiliza um resistor de Pull-up para alimentar a linha de transmissão. Da mesma forma que no I2C, no protocolo 1-Wire a transmissão é feita aterrando o barramento de dados.

2.1 – O sinal no barramento

A comunicação em um barramento 1-Wire inicia com um pulso de reset provocado pelo dispositivo Master. Este pulso é feito aterrando o barramento por no mínimo 480s. Após receber este sinal o dispositivo Slave responde aterrando o barramento por um certo tempo menor que 240s e maior que 60s.

Fig. 3 – Inicialização da comunicação no protocolo 1-Wire Na comunicação 1-Wire o tempo de duração do pulso determina se o bit transmitido é 0 ou 1. Um pulso curto representa o bit 1 enquanto que um pulso longo representa um bit 0.

Fig. 4 – Modo de escrita dos bits 0 e 1 feitas pelo dispositivo Master.

Um bit 1 deve durar no mínimo 60s e no máximo 120s, um bit 0 pode durar no máximo 15s.

Na recepção, o Master sinaliza ao Slave que um time slot será iniciado, ou seja ele irá ler o barramento a partir daquele momento, assim, o Slave inicia a transmissão dos 0s e 1s deixando o barramento com tensão ou aterrando o barramento.

2.2 – Alimentação no modo parasita

O protocolo 1-Wire permite a ligação de dispositivos sem a necessidade de

utilização do Vcc (tensão de alimentação). A alimentação do componente é feita pelo barramento de dados. Durante os pulsos de dados que colocam em 0 volts o barramento, o dispositivo é alimentado por um capacitor interno do componente.

Fig. 5 – Capacitor interno do DS18B20 que o mantém alimentado pelo barramento.

3 – Protocolo CAN

O protocolo CAN ( Controller Area Network ) é um protocolo utilizado para comunicação entre dispositivos microcontrolados inicialmente desenvolvido para utilização em veículos. O protocolo CAN é baseado em envio de mensagens. O primeiro veículo produzido com esta tecnologia foi o BMW Serie 8 lançado em 1988.

Fig. 6 – BMW Serie 8 – Primeiro veículo à utilizar dispositivos com protocolo CAN.

3.1 – O Barramento CAN

O protocolo CAN utiliza um barramento formado por dois fios paralelos no formato de par trançado. Estes fios formam uma linha de transmissão com impedância de 120Ω. Para possibilitar uma alta taxa de transferência a linha utiliza resistores de carga nas pontas evitando sinais refletidos e distorções.

Fig. 7 – Barramento CAN Este barramento CAN é “multi-master”, ou seja permite a utilização de vários dispositivos Master no mesmo barramento.

3.2 – Característica de um CAN NODE

Um CAN Node é um dispositivo ligado ao barramento CAN, pode ser um sensor, um atuador, uma central de controle ou qualquer outro dispositivo que necessite enviar ou receber informações do barramento.

Fig. 8 – Partes de um CAN NODE.

Cada CAN Node necessita dos seguintes itens: - Unidade central de processamento: Microcontrolador que interpreta a mensagem recebido e decide o que será enviado podendo possuir sensores, atuadores e outros dispositivos de controle. - Controlador CAN: Normalmente integrada ao microcontrolador, durante a recepção armazena os bits recebidos até que uma mensagem inteira seja recebida, em seguida ativa uma interrupção do microcontrolador. Durante a transmissão verifica a disponibilidade do barramento e envia serialmente a informação. - Tranceptor: Na transmissão converte as streams a serem enviadas nos níveis de tensão adequados ao barramente, fazendo o processo inverso na recepção. Cada node pode receber e enviar mensagens porém não simultaneamente.

3.3 – O Frame de dados enviado

Um exemplo de conjunto de bits enviados pelo protocolo CAN pode ser visutalizado abaixo:

Fig. 9 – Exemplo de frame no protocolo CAN. Podemos identificar no frame as seguinte partes principais. - Start of frame: Bit que sinaliza o início da transmissão. - Arbitration field e control: Usado para informar o tipo da mensagem. - Data: Contém os dados transmitidos. - CRC: Bits usados para checagem de erro do pacote. - End of frame: identificador de fim de pacote.