Boa tarde meus caros,
Andei pesquisando mais não encontrei nada a respeito, sobre como usar dois dispositivos i2c com arduino, pois preciso utilizar meu modulo de barometro e giroscópio juntos.
Tags:
SM, boa tarde
correto, voce define o ultimo digito do endereço usando os bits A0 até A2.
PCF8574
bit A7 A6 A5 A4 A3 A2 A1 A0
binário 0 0 1 0 0 x x x de 0x20 até 0x27
ou
PCF8574A
bit A7 A6 A5 A4 A3 A2 A1 A0
binário 0 0 1 1 1 x x x de 0x38 até 0x37.
Sobre esta dúvida:
"Agora quero ver se funciona com outros componentes que utilizam I2C."
Todo dispositivo I2C obedece ao mesmo protocolo definido pela
Todo dispositivo I2C deve funcionar em um BUS I2C, desde que obedecida as
regras do protocolo.
As regras que podemos "atrapalha-las" é a que defini a distancia máxima do BUS
e a que define que a soma das capacitâncias de entrada dos dispositivos,
que não deve ultrapassar a 400 pf pra uso na velocidade máxima do bus.
Rui
Esses links são muito bons !
http://www.arduinobr.com/arduino/i2c-protocolo-de-comunicacao/
http://www.arduinobr.com/arduino/i2c-master-enviando-informacoes/
http://www.arduinobr.com/arduino/i2c-configuracoes-avancadas/
Não deixe de colocar os resistores no barramento :
São mesmo, entender o conceitual até que estou entendendo.
Meu problema esta mais na parte da programação. Que não tenho encontrado muitos exemplos.
Nesse caso estão sendo usados dois arduinos.
Por isso tem um código para o mestre e outro para o escravo.
Correto?
Mas e caso eu queira controlar algo como um LCD e o leitor de cartões RFID por exemplo, ou o SD.. eles seriam os Escravos e o Arduino o Mestre. Correto?
Mas como fazer isso que eu não estou entendendo. Como atribuir um valor de memoria para cada um. E como acessar esse valor?
Cada dispositivo I2C possui um endereço, como o Carlos já citou.
O Arduino será sempre mestre e todos outros dispositivos serão escravos.
Stella o adaptador que você esta usando, permite que você escolha endereços diferentes de acordo a como você deixar os jumpers, A0 A1 A2, usando a comunicação I2C você pode conectar mais de 100 dispositivos, sempre que cada um deles tenha um endereço diferente.
Para saber o endereço de cada dispositivo use o I2C scaner, ou codigo que vc carrega no arduino com os dispositivos ligados no bus de dados e ele imprime no monitor serial o endereço de cada um deles.
Links
https://www.youtube.com/watch?v=6IAkYpmA1DQ
https://forum.arduino.cc/index.php?topic=171318.0
https://www.hackmeister.dk/2010/08/4-lcd-displays-on-1-arduino/ (NoI2C)
https://www.nxp.com/documents/data_sheet/PCF8574.pdf (Data)
Boa sorte!
Abs,
CK
Links muito bons.
Vou dar uma olhadinha certinho.
Vi que pra mais de um display funciona.
Agora quero ver se funciona com outros componentes que utilizam I2C.
Obrigada.
Disponha.
Abs,
CK
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por