Autor Tema: ¿Cómo puedo usar el MPU6050 en ensamblador?  (Leído 2436 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Mick

  • PIC10
  • *
  • Mensajes: 3
¿Cómo puedo usar el MPU6050 en ensamblador?
« en: 04 de Marzo de 2019, 03:10:09 »
Necesito utilizar el giroscopio del MPU6050 pero necesito programarlo con ensamblador.
Me gustaría saber como le puedo hacer ya que aun soy  un principiante.

Desconectado Pinolillo16

  • PIC18
  • ****
  • Mensajes: 324
Re:¿Cómo puedo usar el MPU6050 en ensamblador?
« Respuesta #1 en: 04 de Marzo de 2019, 03:12:54 »
Y que has avanzado?

Desconectado Mick

  • PIC10
  • *
  • Mensajes: 3
Re:¿Cómo puedo usar el MPU6050 en ensamblador?
« Respuesta #2 en: 04 de Marzo de 2019, 03:27:50 »
Necesito controlar unos motores ya los he probado haciendo la conversión analógico a digital y luego utilizando PWM para controlar su velocidad. Lo que necesito saber es como utilizar los distintos ejes del giroscopio como señal de entrada y que los motores actúen respecto a la posición del giroscopio.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:¿Cómo puedo usar el MPU6050 en ensamblador?
« Respuesta #3 en: 04 de Marzo de 2019, 11:15:24 »
La comunicacion con el MPU6050 no es compleja, es un I2C... lo complejo va a ser interpretar todo lo que te ofrece el MPU, configurarlo, etc.

Y me parece un integrado muy complejo para 2 cosas que nombras:

- ASM (assembler - ensamblador)
- Principiante

No quiero decir que NO puedas realizarlo.. Solo que juntar esos 2 puntos que nombre hacen que se vuelva una tarea muy compleja.. Primero trataria de hacer funcionar el I2C... Es el primer paso.. Pero estaria bueno que lo hagas con otro integrado mas simple.. supongamos un sensor de temperatura, un RTC. Una ves entendido como es que funciona el I2C, ahi si podes entrar en lo que es TODA la configuracion del MPU, mas leer e interpretar los resultados.

Con respecto al MPU: Por ahi es mas facil tomar una libreria en C, ver como es que trabaja y tratar de hacerlo en ASM, si es tu idea de continuar con ASM. Pero esto requiere que tengas un minimo conocimiento de C... En fin, hacerlo con C seria lo mas sensato.

De todas formas si quisieras obviar lo que dije y perseguir tu objetivo, esto es lo que tenes que hacer:

- Configurar el I2C (guiarte por el datasheet del PIC para saber que registros tocar)
- Aprender como es que funciona el I2C para saber como enviar los datos. Esto tambien requiere que sepas como es que recibe los datos el MPU, por lo tanto en la pagina 35 del datasheet del MPU explica la lectura/escritura de un solo byte o muchos. Link al datasheet: https://store.invensense.com/datasheets/invensense/MPU-6050_DataSheet_V3%204.pdf
- Luego necesitas comprender para que sirve cada registro del MPU, asi poder configurarlo correctamente y saber que datos tomar. Para eso esta este PDF que tiene todos los registros: https://www.invensense.com/wp-content/uploads/2015/02/MPU-6000-Register-Map1.pdf
- Finalmente ya estarias en condicion de tomar los datos correctamente del MPU. Ahora una ves que lleguen a tu PIC es interpretarlos correctamente.

Y se termino. Luego de que veas TODO lo que te dije, te vas a dar cuenta porque te decia que me parece un integrado complejo para comenzar.

La otra opcion, es buscar alguna libreria en C, modificarla, y programar en C. Y rogar que funcione :P

Desconectado planeta9999

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3520
    • Pinballsp
Re:¿Cómo puedo usar el MPU6050 en ensamblador?
« Respuesta #4 en: 04 de Marzo de 2019, 11:27:18 »
 
Salvo que se trate de las típicas exigencias absurdas de un profesor de colegio a sus alumnos, no tiene sentido, en ningún caso, programar en ensamblador, excepto si uno lo quiere hacer por voluntad propia y es masoquista.

Con lo sencillo que es programar en C, que además tienes librerías y programas de ejemplo, prácticamente para cualquier cosa.

« Última modificación: 04 de Marzo de 2019, 11:29:24 por planeta9999 »

Desconectado Mick

  • PIC10
  • *
  • Mensajes: 3
Re:¿Cómo puedo usar el MPU6050 en ensamblador?
« Respuesta #5 en: 11 de Marzo de 2019, 17:52:56 »
Si era parte de un proyecto de escuela, lo bueno es que si me dejaron cambiar a C.
Gracias a todos  :mrgreen:


 

anything