Bom dia pessoal, tudo bem?

Comprei recentemente um módulo Oxímetro MAX30100 e estou com algumas dúvidas antes de testá-lo.

Pelo que entendi, não é necessário remover os 3 resistores de 4.7k (pull up) se for utilizar apenas o módulo MAX30100 na I2C.

Entretanto algumas referências recomendam a retirada dos resistores de pull-up da placa e a instalação dos mesmos externamente https://www.teachmemicro.com/max30100-arduino-heart-rate-sensor.

Outros até recomendam adicionar mais 3 resistores de pull-up externamente no módulo MAX30100.

Essa divergência nas informações me deixou confuso! Posso usar o módulo MAX30100 ligado a um Arduino UNO sem modificar nem adicionar resistores de pull-up?

Agradeço desde já a atenção!

Exibições: 160

Responder esta

Respostas a este tópico

Bom dia SFM,

se for usar um módulo somente na inteface I2C,  não precisa modificar nada, mas ao

acrescentar qq tipo de módulo na I2C, tem que verificar se ele já tem os resistores, pois deve-se deixar

somente um conjunto de resistores. (Entre 4k7 e 10k)

RV

Perfeito Mineirin, muito obrigado!

Boa noite, 

Primeiro passo é identificar o modelo do seu sensor. 

Confirme se o seu módulo é igual à esse :

Se for igual à esse modelo acima, o diagrama do circuito deve ser esse :

https://www.makerfabs.com/max30100-pulse-oximeter-spo2-and-heart-ra...

Veja que as linhas da interface I2C - SCL e SDA e a linha de Interrupção INT possuem resistores de pullup de 4,7 K ohms.

Mas esses resistores estão conectados na linha de VCC de 1,8V !  Isso pode ser um problema, pois os níveis dos sinais deverão ser no máximo 1,8V. 

Observando o datasheet do MX30100 , vemos que a tensão VDD do chip é de apenas 1,8V ! 

https://datasheets.maximintegrated.com/en/ds/MAX30100.pdf

Minha conclusão (procedimento Ideal) 

1) Não retire nenhum dos resistores do módulo MAX30100

2) use um conversor bilateral de níveis de tensão ( Lado do Arduino 5V e no lado do MAX30100 use 1,8V) 

Parece que os pinos suportam 5V :

All Other Pins to GND ..........................................-0.3V to +6.0V

Veja nesse tutorial com usar o conversor de níveis de tensão :

https://learn.sparkfun.com/tutorials/bi-directional-logic-level-con...

Bom dia José Gustavo, tudo bem?

No tutorial do conversor que tem apenas a conversão 5V p/ 3.3V, ambas tensões têm no arduíno. Como faço para ter 1.8V ? Vou precisar de um regulador de tensão?

Obrigado!

Samuel

Analisando o link que enviou :

https://www.teachmemicro.com/max30100-arduino-heart-rate-sensor

De certa forma, no meu ponto de vista, ele esta correto ao retirar os resistores das linhas I2C do módulo.

Ele alterou o VCC dos resistores de pullup para 5V, fazendo a montagem externa.

A minha dúvida é se o Módulo MAX30100 funcionará corretamente.

So testando e verificando as linhas com um osciloscópio. 

Aparentemente não esta funcionando adequadamente = 100 Bpm não é normal. 

Somente se ele tivesse feito algum exercício físico.

Por exemplo = o meu Bpm normal é de aproximadamente 80.  

(tenho um Oxímetro em casa) 

Leu os comentários?

Vários reclamando que a montagem não funciona, 

Usando um Microcontrolador que funciona com 3,3V :

http://www.alselectro.com/max30100-pulse-oximeter-spo2-and-heart-ra...

Bom dia SFM,

leia este artigo, ele alerta para um defeito neste módulo que vc está usando.

https://reedpaper.wordpress.com/2018/08/22/pulse-oximeter-max30100-...

RV

Bom dia Rui, 

Discordo que seja uma falha de projeto. O que não é explicado é que a interface I2C usa a tensão de 1,8V que é a tensão digital do chip. 

Como eu já disse, o correto seria usar o conversor bidirecional de nível de tensão de 1,8V para 5V do Arduino. Ou então fazer a modificação da I2C para 5V ou 3,3V e rezar para funcionar e não queimar nada. 

Medi as tensões dos reguladores e no meu módulo estão OK - 3,3V e 1,8V. 

Abraços 

Bom  tarde José Gustavo Abreu Murta,
este CI me deixou curioso, daí resolvi dar uma " ispiada" no datasheet dele,
principalmente focando no I2C.
https://www.google.com/url?sa=t&source=web&rct=j&url=ht...

 Observasões:


pag 2. Absolute Maximum Ratings
VDD to GND .........................................................-0.3V to +2.2V
GND to PGND.......................................................-0.3V to +0.3V
x_DRV, x_LED+ to PGND........................................-0.3V to +6.0V
All Other Pins to GND ..........................................-0.3V to +6.0V. <--------<  /p>


Pag 4. Electrical Characteristics (continued)
   PARAMETER.                 SYMBOL.           CONDITIONS.     MIN.    TYP.     MAX. UNITS
I2C Input Voltage Low.     VIL_I2C.                  SDA, SCL.                                  0.4.       V
I2C Input Voltage High.    VIH_I2C.                 SDA, SCL.       1.4.                                  V

Pag 8. Pin Description
PIN.    NAME.            FUNCTION
2.        SCL. I2C.     Clock Input
3.        SDA. I2C.     Clock Data, Bidirectional (Open-Drain)

Analisando estas informações, vou inferir que este chip suporta 5V nos ports I2C.

Abraços,
RV.

Boa noite Rui, 

Uma coisa é suportar e a outra é trabalhar...

Só testando.

Bom dia José Gustavo!

O módulo é este mesmo.

Vou optar pela utilização do conversor de nível.

Ainda não vi todas as referências que vocês postaram, vou ler com calma e volto aqui com as dúvidas.

Muito obrigado!

Samuel

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2019   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço