Autor Tema: Convertir Rutina C en archivo compatible con Mplab X  (Leído 1894 veces)

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

Desconectado daniel24

  • PIC10
  • *
  • Mensajes: 4
Convertir Rutina C en archivo compatible con Mplab X
« en: 15 de Diciembre de 2016, 18:44:27 »
Hola a todos, estoy empezando a  programar un sensor de presión hidrostática para llevar el monitoreo de prufundidad de un móvil bajo el agua, el sensor que usaré se comunica a través de I2C con un pic 16f877a el cual será el maestro.
El problema es: que la lectura de presión que me brinda el sensor se puede expresar con decimales lo que me obliga a usar lenguaje C para tener acceso a las variables FLOAT y poder expresar fácilmente el valor decimal en un LCD.
Siempre he usado assembler pero esta vez necesito migrar a otro lenguaje y debido al tiempo de entrega de mi trabajo no aprenderé correctamente el lenguaje C, por eso queria saber si de alguna manera se podria incluir dentro de mi rutina assembler algunas partes en lenguaje C, o en todo caso convertir esas partes en archivos INC y llamarlas solo cuando las necesite.
La variable en punto flotante solo la necesitare para hacer el calculo de la altura y mostrarlo en el LCD por lo que el sensado de botones y alguna otra funcion complementaria las puedo programar en assembler.
Gracias por su atencion espero sus sugerencias  :lol: :lol: :lol:

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:Convertir Rutina C en archivo compatible con Mplab X
« Respuesta #1 en: 15 de Diciembre de 2016, 18:53:58 »
En si podrias incorporar tu .asm a un proyecto en C, el problema es que hay miles de cosas mas de agregar y ninguna de forma sencillas, Creo que es mucho mas complicado crear un programa mezclado ASM + C que hacerlo de 0 en C.

Como bien decis el problema es el punto flotante. Trata de hacerlo en ASM, pero no en punto flotante. sino con numeros en formatos BCD.

Si dividis por numeros enteros se hace aun mas simple la operacion. Ahora si tenes que multiplicar y dividir por fraccionarios se va a complicar un poco mas :P, podes tratar de crear una formula que puedas llevarlos a enteros. No se que formula tenes que aplicar para calcularlo.

Desconectado daniel24

  • PIC10
  • *
  • Mensajes: 4
Re:Convertir Rutina C en archivo compatible con Mplab X
« Respuesta #2 en: 15 de Diciembre de 2016, 20:27:17 »
Si, la verdad estuve intentando incluir el archivo en mi rutina pero fracasé, creo q manejare la variable que me da el sensor en binario luego haré las operaciones correspondientes y el resultado lo pasaré a entero-decimal. Investigué y al parecer los decimales se expresan como potencias negativas de dos, intentaré hacer una rutina de conversión para luego mostrarlo al lcd.
Gracias por la sugerencia.


 

anything