SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
Comunicação I2C com Arduíno e
Raspberry Pi
Prof. Dr. Eduardo S. Pereira
O Raspberry pi
1. Computador do tamanho de um cartão de crédito desenvolvido no Reino Unido
2. Fundação Raspberry Pi
3. Promover o ensino de Ciência da Computação básica em escolar
1. Inter-Integrated Circuit - I2C - (Circuito inter integrado).
2. É um protocolo de barramento (bus)
3. Com os mesmos fios é possível conectar vários dispositivos
4. No Arduino Uno os pinos são os 4 (SDA) e o 5 (SCL)
5. No Arduino Mega os pinos são o 20 (SDA) e 21 (SCL).
1. No raspberry pi, os pinos 3 (GPIO 2) e 5 (GPIO 3) são, respectivamente SDA e SCL.
1. SDA - Serial Data - Pino que transfere os dados;
2. SCL - Serial Clock - Serve para temporização entre os dispositivos - Mater
confiabilidade na comunicação do SDA.
3. Tanto o envio quanto a recepção de dados ocorre pela SDA - Linha bidirecional
4. Relação Mestre/Subordinado - Ao menos um deve ser o mestre e os outros serão
subordinados.
Usando dois pinos podemos conectar vários dispositivos, com limite teórico de até 127 dispositivos
Usando dois pinos podemos conectar vários dispositivos, com limite teórico de até 127 dispositivos
Endereçamento
1. Cada dispositivo possui um endereço para identificá-lo
2. Composto normalmente por 7 bits.
3. O oitavo bit indica se a operação é de leitura ou escrita
4. O endereço é colocado no início da transmissão
Endereçamento
1. Os dados são transferidos em sequência de 8 bits
2. Apos cada 8 bits, um bit de separação é enviado, o chamado reconhecer (Acknowledge)
3. Os próximos 8 bits representam o endereço do escravo;
4. Mais um bit de reconhecimento é enviado
5. Em seguida seguem os bits de dados.
Endereçamento
1. A condição de envio e parada ocorrem em condições de queda e subida do SDA enquanto o clock está
alto, vindo de uma subida ou indo para uma queda.
Exemplo de Código
Mestre Subordinado
Exemplo de Código
Mestre Subordinado
Exemplo de Código - Scanner de Endereço
Configurando o I2C no Raspberry pi
1. No terminal digitar: sudo raspi-config
2. Escolher : Interfacing Options
3. Escolher: I2C
4. Escolher : yes para ativar o I2C
5. Yes para carregar automaticamente o módulo do kernel
6. Finalizar e reiniciar
Configurando o I2C no Raspberry pi
1. Para buscar subordinados conectados:
a. Instalar: i2c-tools: sudo apt-get install -y i2c-tools
2. Para detectar:
a. I2cdetect -y 1
Lendo dado I2C no Raspberry pi
Lendo dado I2C no Raspberry pi
Projeto Quad Bot - Raspberry Pi e Arduino
https://github.com/duducosmos/legs
Projeto Quad Bot - Raspberry Pi e Arduino
Projeto Quad Bot - Raspberry Pi e Arduino
Projeto Quad Bot - Raspberry Pi e Arduino
Para Saber mais:
https://howtomechatronics.com/tutorials/arduino/how-i2c-communication-works-and-how-to-use-it-with-arduino/
https://portal.vidadesilicio.com.br/i2c-comunicacao-entre-arduinos/
http://www.arduinobr.com/arduino/i2c-protocolo-de-comunicacao/
Prof. Dr. Eduardo S. Pereira
Git: duducosmos
Twitter: @duducosmos
pereira.somoza@gmail.com

Mais conteúdo relacionado

Semelhante a Arduino day 2019 - Comunicação I2C Arduino e Raspberry Pi

Aprendendo a programar em arduino
Aprendendo a programar em arduinoAprendendo a programar em arduino
Aprendendo a programar em arduinoinfo_cimol
 
Perlduino - Interfaceando sua aplicação com o mundo real!
Perlduino - Interfaceando sua aplicação com o mundo real!Perlduino - Interfaceando sua aplicação com o mundo real!
Perlduino - Interfaceando sua aplicação com o mundo real!Samir Siqueira
 
Jogos Multi-jogadores: Revisão sobre Redes de computadores
Jogos Multi-jogadores: Revisão sobre Redes de computadoresJogos Multi-jogadores: Revisão sobre Redes de computadores
Jogos Multi-jogadores: Revisão sobre Redes de computadoresFernando Vieira da Silva
 
Arduino introdução - 10 projectos
Arduino   introdução - 10 projectosArduino   introdução - 10 projectos
Arduino introdução - 10 projectosDaniel Chavier
 
Projeto final m_243_dulo_4
Projeto final m_243_dulo_4Projeto final m_243_dulo_4
Projeto final m_243_dulo_4y3vg3n
 
Discos barramentos e portas de comunicação
Discos barramentos e portas de comunicaçãoDiscos barramentos e portas de comunicação
Discos barramentos e portas de comunicaçãosimoesflavio
 
Redes De Computadores Internet
Redes De Computadores   InternetRedes De Computadores   Internet
Redes De Computadores InternetMario Bittencourt
 
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014Fabio Souza
 
Ccna1 10 - fundamentos de routing e de sub-redes
Ccna1 10 - fundamentos de routing e de sub-redesCcna1 10 - fundamentos de routing e de sub-redes
Ccna1 10 - fundamentos de routing e de sub-redesTaurux Vaz
 
Arduino Day 2015 - LHC - Controle de Pragas
Arduino Day 2015 - LHC - Controle de PragasArduino Day 2015 - LHC - Controle de Pragas
Arduino Day 2015 - LHC - Controle de PragasDouglas Esteves
 
Raspberry Pi 3 - Arquitetura e Organização de Computadores I
Raspberry Pi 3 - Arquitetura e Organização de Computadores IRaspberry Pi 3 - Arquitetura e Organização de Computadores I
Raspberry Pi 3 - Arquitetura e Organização de Computadores IEdwildson Coelho Rodrigues
 
Interceptar palavras passes de páginas web em uma rede sem fios
Interceptar palavras passes de páginas web em uma rede sem fiosInterceptar palavras passes de páginas web em uma rede sem fios
Interceptar palavras passes de páginas web em uma rede sem fiosDerek Budde
 

Semelhante a Arduino day 2019 - Comunicação I2C Arduino e Raspberry Pi (20)

Aprendendo a programar em arduino
Aprendendo a programar em arduinoAprendendo a programar em arduino
Aprendendo a programar em arduino
 
Arduino como programar
Arduino como programarArduino como programar
Arduino como programar
 
Perlduino - Interfaceando sua aplicação com o mundo real!
Perlduino - Interfaceando sua aplicação com o mundo real!Perlduino - Interfaceando sua aplicação com o mundo real!
Perlduino - Interfaceando sua aplicação com o mundo real!
 
Cap4
Cap4Cap4
Cap4
 
Jogos Multi-jogadores: Revisão sobre Redes de computadores
Jogos Multi-jogadores: Revisão sobre Redes de computadoresJogos Multi-jogadores: Revisão sobre Redes de computadores
Jogos Multi-jogadores: Revisão sobre Redes de computadores
 
Arduino introdução - 10 projectos
Arduino   introdução - 10 projectosArduino   introdução - 10 projectos
Arduino introdução - 10 projectos
 
Projeto final m_243_dulo_4
Projeto final m_243_dulo_4Projeto final m_243_dulo_4
Projeto final m_243_dulo_4
 
Embarcados - I2C.pptx
Embarcados - I2C.pptxEmbarcados - I2C.pptx
Embarcados - I2C.pptx
 
Treinamento arduino (1).pptx
Treinamento arduino (1).pptxTreinamento arduino (1).pptx
Treinamento arduino (1).pptx
 
Discos barramentos e portas de comunicação
Discos barramentos e portas de comunicaçãoDiscos barramentos e portas de comunicação
Discos barramentos e portas de comunicação
 
Redes sem FIO
Redes sem FIORedes sem FIO
Redes sem FIO
 
Redes De Computadores Internet
Redes De Computadores   InternetRedes De Computadores   Internet
Redes De Computadores Internet
 
Curso redes seed
Curso redes seedCurso redes seed
Curso redes seed
 
Redes
RedesRedes
Redes
 
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
 
Ccna1 10 - fundamentos de routing e de sub-redes
Ccna1 10 - fundamentos de routing e de sub-redesCcna1 10 - fundamentos de routing e de sub-redes
Ccna1 10 - fundamentos de routing e de sub-redes
 
Manual do Conversor Serial Ethernet CS-Ethernet
Manual do Conversor Serial Ethernet CS-EthernetManual do Conversor Serial Ethernet CS-Ethernet
Manual do Conversor Serial Ethernet CS-Ethernet
 
Arduino Day 2015 - LHC - Controle de Pragas
Arduino Day 2015 - LHC - Controle de PragasArduino Day 2015 - LHC - Controle de Pragas
Arduino Day 2015 - LHC - Controle de Pragas
 
Raspberry Pi 3 - Arquitetura e Organização de Computadores I
Raspberry Pi 3 - Arquitetura e Organização de Computadores IRaspberry Pi 3 - Arquitetura e Organização de Computadores I
Raspberry Pi 3 - Arquitetura e Organização de Computadores I
 
Interceptar palavras passes de páginas web em uma rede sem fios
Interceptar palavras passes de páginas web em uma rede sem fiosInterceptar palavras passes de páginas web em uma rede sem fios
Interceptar palavras passes de páginas web em uma rede sem fios
 

Mais de Eduardo S. Pereira

Lista de Exercícios de Probabilidade e Estatística do Segundo Bimestre
Lista de Exercícios de Probabilidade e Estatística do Segundo BimestreLista de Exercícios de Probabilidade e Estatística do Segundo Bimestre
Lista de Exercícios de Probabilidade e Estatística do Segundo BimestreEduardo S. Pereira
 
Aula 10 Probabilidade e Estatística
Aula 10 Probabilidade e EstatísticaAula 10 Probabilidade e Estatística
Aula 10 Probabilidade e EstatísticaEduardo S. Pereira
 
Aula de Probabilidade e Estatítisca Revisão
Aula de Probabilidade e Estatítisca RevisãoAula de Probabilidade e Estatítisca Revisão
Aula de Probabilidade e Estatítisca RevisãoEduardo S. Pereira
 
Atividade prática Probabilidade e Estatística
Atividade prática Probabilidade e EstatísticaAtividade prática Probabilidade e Estatística
Atividade prática Probabilidade e EstatísticaEduardo S. Pereira
 
Probabilidade e Estatítica Lista de Exercícios 1
Probabilidade e Estatítica Lista de Exercícios 1Probabilidade e Estatítica Lista de Exercícios 1
Probabilidade e Estatítica Lista de Exercícios 1Eduardo S. Pereira
 
Probabilidade e Estatística Tabelas de Frequência
Probabilidade e Estatística Tabelas de FrequênciaProbabilidade e Estatística Tabelas de Frequência
Probabilidade e Estatística Tabelas de FrequênciaEduardo S. Pereira
 
Probabilidade e Estatística Boxplot
Probabilidade e Estatística BoxplotProbabilidade e Estatística Boxplot
Probabilidade e Estatística BoxplotEduardo S. Pereira
 
Primeira Lista de Exercícios de Modelagem de Dados
Primeira Lista de Exercícios de Modelagem de DadosPrimeira Lista de Exercícios de Modelagem de Dados
Primeira Lista de Exercícios de Modelagem de DadosEduardo S. Pereira
 
Aula 7 - Algoritmos e Estrutura de Dados
Aula 7 - Algoritmos e Estrutura de DadosAula 7 - Algoritmos e Estrutura de Dados
Aula 7 - Algoritmos e Estrutura de DadosEduardo S. Pereira
 

Mais de Eduardo S. Pereira (20)

Lista de Exercícios de Probabilidade e Estatística do Segundo Bimestre
Lista de Exercícios de Probabilidade e Estatística do Segundo BimestreLista de Exercícios de Probabilidade e Estatística do Segundo Bimestre
Lista de Exercícios de Probabilidade e Estatística do Segundo Bimestre
 
Aula 10 Probabilidade e Estatística
Aula 10 Probabilidade e EstatísticaAula 10 Probabilidade e Estatística
Aula 10 Probabilidade e Estatística
 
Aula de Probabilidade e Estatítisca Revisão
Aula de Probabilidade e Estatítisca RevisãoAula de Probabilidade e Estatítisca Revisão
Aula de Probabilidade e Estatítisca Revisão
 
Atividade prática Probabilidade e Estatística
Atividade prática Probabilidade e EstatísticaAtividade prática Probabilidade e Estatística
Atividade prática Probabilidade e Estatística
 
Probabilidade e Estatítica Lista de Exercícios 1
Probabilidade e Estatítica Lista de Exercícios 1Probabilidade e Estatítica Lista de Exercícios 1
Probabilidade e Estatítica Lista de Exercícios 1
 
Probabilidade e Estatística Tabelas de Frequência
Probabilidade e Estatística Tabelas de FrequênciaProbabilidade e Estatística Tabelas de Frequência
Probabilidade e Estatística Tabelas de Frequência
 
Probabilidade e Estatística Boxplot
Probabilidade e Estatística BoxplotProbabilidade e Estatística Boxplot
Probabilidade e Estatística Boxplot
 
Aula 11 Modelagem de Dados
Aula 11 Modelagem de DadosAula 11 Modelagem de Dados
Aula 11 Modelagem de Dados
 
Aula 10 Modelagem de Dados
Aula 10 Modelagem de DadosAula 10 Modelagem de Dados
Aula 10 Modelagem de Dados
 
Aula 9 Modelagem de Dados
Aula 9 Modelagem de DadosAula 9 Modelagem de Dados
Aula 9 Modelagem de Dados
 
Aula 7 Modelagem de Dados
Aula 7 Modelagem de DadosAula 7 Modelagem de Dados
Aula 7 Modelagem de Dados
 
Aula 8 Modelagem de Dados
Aula 8 Modelagem de DadosAula 8 Modelagem de Dados
Aula 8 Modelagem de Dados
 
Primeira Lista de Exercícios de Modelagem de Dados
Primeira Lista de Exercícios de Modelagem de DadosPrimeira Lista de Exercícios de Modelagem de Dados
Primeira Lista de Exercícios de Modelagem de Dados
 
Aula 06 Modelagem de Dados
Aula 06 Modelagem de DadosAula 06 Modelagem de Dados
Aula 06 Modelagem de Dados
 
Aula05
Aula05Aula05
Aula05
 
Aula04
Aula04Aula04
Aula04
 
Aula03
Aula03Aula03
Aula03
 
Aula02
Aula02Aula02
Aula02
 
Aula01
Aula01Aula01
Aula01
 
Aula 7 - Algoritmos e Estrutura de Dados
Aula 7 - Algoritmos e Estrutura de DadosAula 7 - Algoritmos e Estrutura de Dados
Aula 7 - Algoritmos e Estrutura de Dados
 

Arduino day 2019 - Comunicação I2C Arduino e Raspberry Pi