Pessoal, boa tarde!

Minha questão pode parecer obvia aos experts aqui do fórum, mas vasculhei a internet e não encontrei resposta. 

Comprei dois transdutores de pressão que funcionam com o protocolo I2C.

Ambos estão com o endereço 109 e por isso não consigo usá-los numa rede.

Alguém sabe como eu faço para alterar o endereço de um deles?

Obrigado por qualquer ajuda.

Zé Roberto  

Exibições: 618

Responder esta

Respostas a este tópico

Boa tarde J2R, (se não gosta que te chame pelas iniciais, avise),

para que possamos melhor ajuda-lo, informe o modelo e se possível o link com o datasheet deste seu transdutor.

Uma solução para este tipo de problema (múltiplos endereços iguais) é o uso de uma placa de expansão de I2C.

Tca9548a

https://randomnerdtutorials.com/tca9548a-i2c-multiplexer-esp32-esp8...

""

Descrição

DESCRIÇÃO DO PRODUTO:
1 x Módulo Multiplexador Switch I2C 8 canais TCA9548A;
*
*
Finalmente, uma maneira de obter até 8 dispositivos I2C de mesmo endereço conectados a um microcontrolador - esse multiplexador atua como um gatekeeper, transferindo os comandos para o conjunto selecionado de pinos I2C com o seu comando.

""

RV mineirin

Olá Rui, 
segue:

https://docplayer.net/174159469-Wnk80ma-compact-pressure-transmitte...

PS: Vou fazer um e-mail ao fabricante (WNK) para obter informações.

Zé Roberto

Boa tarde,

WNK80MA ceramic pressure sensor
Me parece que esse sensor só pode ter um endereço. 
Nesse caso, o ideal você usar dois barramentos I2C. Use a sugestão do Rui - Módulo Multiplexador Switch I2C 8 canais TCA9548A

Olá José Roberto,

Também estou usando o sensor WNK80MA via I2C, mas estou com o seguinte problema.
Quando alimentado o sensor mantêm o pino 3 - SDA em GND.
Até onde eu sei ele deveria deixar este pino flutuando e somente aterrar no caso do ACK ou no envio dos dados.
Poderia me dizer se o seu sensor também se comporta assim?

Mais um detalhe, você possui o documento da comunicação I2C deste sensor?
Eu tenho apenas estes documento aqui:

https://sensorsandpower.angst-pfister.com/fileadmin/products/datash...

Outro caminho, que já usei no tempo dos microcontroladores sem biblioteca (no 8051 fazia o I2C por software e nunca morri...), seria ter 2 rotinas de I2C.

Uma usando um par de pinos e a outra usando outro par de pinos.

Na época usei 1 SCL (o mesmo pino atende os 2) e 2 SDA.

Assim para me comunicar com um usava uma rotina e com o outro a outra..

Acredito que agora no tempo das bibliotecas isso não seja mais possível, mas caso vc consiga trocar o pino do I2C depois de definido pode tb ser uma gambiarra funcional.

Outra coisa, o ESP32 tem uma grande chave que pode ser usada para mudar a função dos pinos. 

Vide pg 46 de:
https://www.espressif.com/sites/default/files/documentation/esp32_t...

Nunca usei, não sei se é possivel, mas pode ser que vc consiga direcionar o I2C para outros pinos. A ideia é escolher um sensor, inicializar, o outro, inicializar, o primeiro, lê, o segundo lê... aih vai.

Ref:

http://jcoppens.com/globo/gl_pre/t_common/data/c0302dc.pdf

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço