Autor Tema: Cálculo raiz cuadrada con PIC en C (ayuda por favor)  (Leído 7236 veces)

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

Desconectado ancor

  • PIC10
  • *
  • Mensajes: 5
Cálculo raiz cuadrada con PIC en C (ayuda por favor)
« en: 21 de Octubre de 2010, 19:09:54 »
Necesito hacer un proyecto que se basa en el cálculo de la raiz cuadrada para obtener el valor eficaz de una tensión alterna. El caso es que hago una simple función de prueba y da un error. Teoricamente la libteria Math 24 incluye la función sqrt, pero algo me falla en el programa. No sé qué falla y es muy urgente puesto que el trabajo tiene plazo de entrega y estoy atascado en este punto. ¿Alguien puede decirme por favor qué está fallando?. El programa es el siguiente:

#pragma chip PIC16F627A           
#pragma origin 0x05 
#include "math24f.h"
#include "math24lb.h"

float raiz;     
   
void main(void)
{
      TRISA = 0x00;
      TRISB = 0x00;
   
   while (1)
      {   
      raiz = sqrt (49); // Calcula la raiz del número que pongamos como argumento..
      PORTB = raiz; // Presenta el valor de la raiz en binario a través del puerto B.
      }
}


Muchas gracias de antemano.

Ancor.

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: Cálculo raiz cuadrada con PIC en C (ayuda por favor)
« Respuesta #1 en: 21 de Octubre de 2010, 19:22:08 »
Asegúrate de que 49 sea un número flotante o double.
Asegúrate de que raíz reciba un número entero.

Debes estudiar más sobre castings.

Desconectado ancor

  • PIC10
  • *
  • Mensajes: 5
Re: Cálculo raiz cuadrada con PIC en C (ayuda por favor)
« Respuesta #2 en: 21 de Octubre de 2010, 19:36:56 »
Gracias por la rápida respuesta, pero la verdad es que estoy un poco verde en este tema.
Imagino que el problema debe estar en la declaración de la variable raiz y del formato del rsultado del cálculo sqrt pero no sé qué tipo de variable debe ser cada cosa o cómo controlar lo que me dices.


Asegúrate de que 49 sea un número flotante o double.
Asegúrate de que raíz reciba un número entero.

Debes estudiar más sobre castings.


Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: Cálculo raiz cuadrada con PIC en C (ayuda por favor)
« Respuesta #3 en: 21 de Octubre de 2010, 19:41:21 »
Por eso digo que debes estudiar más sobre castings.

http://www.aui.ma/personal/~O.Iraqi/csc1401/casting.htm

Desconectado ancor

  • PIC10
  • *
  • Mensajes: 5
Re: Cálculo raiz cuadrada con PIC en C (ayuda por favor)
« Respuesta #4 en: 21 de Octubre de 2010, 19:47:10 »
OK, gracias por el link, no sabía ni lo que eran los castings.
Me será de gran ayuda.



Por eso digo que debes estudiar más sobre castings.

http://www.aui.ma/personal/~O.Iraqi/csc1401/casting.htm