Acelerómetro MMA8452Q

#1
Me podrian ayudar, si conocen alguna forma como podria conectar el acelerometro mma8452q (que trabaja a 3.3 V) al pic 16f887a (que trabaja a 4V min) mediante I2C, ya que el problema esta en las señales de reloj y de lectura de datos, como limitar el voltaje sin que se afecte la señal de reloj, y sobre todo la de datos ya que es bidireccional, como limitarla. se los agradeceria enormemente, o alguien ya tiene un circuito realizado con este aceleroemtro utilziando una tarjeta u otro pic??
 
#2
Según el Datasheet lo puedes alimentar desde 2V a 5'5V. Por lo tanto la solución más fácil sería alimentar el PIC con 3'3V igual que el acelerómetro, así los niveles serían los mismos.
 
#3
El bus I2C es independiente de la tension de trabajo de los dispositivos, si tu PIC trabaja a 4V y el acelerometro a 3.3V, si en el bus pones las R de Pull-Up a 3.3v va a andar perfecto ;).

Saludos !
 
#4
Me podrian ayudar, si conocen alguna forma como podria conectar el acelerometro mma8452q con un pic 16f877a en asambler o en mikrobasic



Me podrian ayudar, si conocen alguna forma como podria conectar el acelerometro mma8452q (que trabaja a 3.3 V) al pic 16f887a (que trabaja a 4V min) mediante I2C, ya que el problema esta en las señales de reloj y de lectura de datos, como limitar el voltaje sin que se afecte la señal de reloj, y sobre todo la de datos ya que es bidireccional, como limitarla. se los agradeceria enormemente, o alguien ya tiene un circuito realizado con este aceleroemtro utilziando una tarjeta u otro pic??
ayudame a conectar un acelerometro mma8452q con un micro. pic 16f877a en asambler o en mikrobasic en q soy nuevo programando



necesito ayuda con para hacer la programacion de un acelerometro mma8452q y un pic 16f877a en asambler o en mikrobasic
 
Última edición:
#5
Yo lo hice con un JFET N aunque al mismo nivel, solo conecté gate a tierra y las otras dos terminales a los resistores alimentados al nivel de cada chip, lo probé una ves solamente en una linea bidireccional al mismo nivel, use un 2N5457 pero lo importante es tener un bajo voltaje en para el off y manejar la corriente suficiente en Vgs=0V, en los JFET no importa source y drain por que se pueden invertir, entonces cuando esta en estado alto se eleva en ambos lados por que gate queda a voltaje negativo (diriamos que -3,3V) y se corta la corriente por lo que el resistor Pull-Up eleva el voltaje, luego cuando alguna de las lineas pase a estado bajo Gate queda a 0V, lo que hace conducir al transistor la corriente del resistor en el otro lado y bajando el voltaje.
 
#6
Buenas tardes, compañeros.

Estoy intentando leer desde el PIC16F873, un acelerómetro MMA8452Q
Diseñé el código en ensamblador y el PIC lo conecté a 3.3 voltios aparte y no me responde como desearía.
También leí que entrega tramas en complemento a 2 y me entrega unas tramas que yo convierto a ASCII para visualizarlas en Putty, pero muevo el acelerómetro y no cambian.

¿Alguien podría aportar algo acerca de este acelerómetro?

Gracias compañeros.
 
#8
Compañero pandacba, he utilizado el AN4070 que es el protocolo de inicio y comunicación con este acelerómetro.
Uso este PIC porque tiene bus I2C y obtengo comunicación.
Yo creé el protocolo en ensamblador pero la respuesta no es la adecuada debido a que muevo el acelerómetro y no pasa nada.

¿Qué me sugieren, compañeros?
 
#9
Has utilizado una el chip solo o una placa de las que se venden en el mercado?
Deberías publicar tu código y el esquema de conecciones, para poder ayudarte mejor
 
#10
Compañeros pandacba y saksantos, logre comunicar el MMA8452q lo inicie con una rutina sencilla enviandole a la direccion 0x3A pero en modo escritura o sea la 0X3B al registro 0X2A el dato 0X1 es decir la configuracion basica para poder leer los registros desde el 1 al 6 que es donde quedan los datos de los 3 ejes segun su data sheet, tanto esta configuracion como la lectura de registros debe ser repetitiva es decir en un bucle ya que note que si no se se configura de nuevo no trabaja bien de echo eso era lo que me ocurria.

Bueno esta en assembler pero eso no es problema porque si alguien que programa los microcontroladores PIC en lenguaje C la quiere usar, puede usar esto como libreria en c, simplemente se les agrega al inicio el comando #asm y lenguaje C lo acepta y listo compañeros. Quien la necesite con gusto le puedo indicar en el codigo en C como agregar la parte de asembler al codigo en c como libreria.

En conclusion:
Se conecta el acelerometro al micro con 2 resistencias de 330 ohmios en su SDA y SCL al PIC, luego le diseñan la fuente de 3.3 voltios facil se toma un LM317 se coloca entre su pata 1 y 2 una resistencia de 240 ohmios y en la pata 1 una resistencia a tierra de 390 ohmios esto regula en el LM 317 los 3.3 voltios segun su ecuacion.
No hay mucha informacion de codigo ejemplo en C o assembler para conectar este acelerometro a los pics, solo en Arduino y es bastante larga jejeje pero bueno como les dije quien la necesite con gusto les probeo el codigo.

Espero no sea tarde para el compañero saksantos quien la necesite ahi esta.

Saludos del mostro
 

Temas similares

Arriba