Pues eso, tengo un problema:
Haciendo una funcion para traspasar numeros, a "BCD" o mas bien a cadenas de numeros de la tabla ASCII, me doy cuenta, que por mas que intento, no puedo pasar un numero mayor que 39.999, aca les dejo el codigo, y cada vez que lo simulo en proteus al intentar convertir un numero igual o mayor que 40.000 me salen caracteres extraños...
//************************************************************
entero = valor / 100000;
if(entero == 0 & nulos == 1)
{
escribir_lcd(entero+48);
}
if(entero!=0)
{
escribir_lcd(entero+48);
nulos = 1;
}
valor = valor - (entero*100000);
//************************************************************
entero = valor / 10000;
if(entero == 0 & nulos == 1)
{
escribir_lcd(entero+48);
}
if(entero!=0)
{
escribir_lcd(entero+48);
nulos = 1;
}
valor = valor - (entero*10000);
//************************************************************
entero = valor / 1000;
if(entero == 0 & nulos == 1)
{
escribir_lcd(entero+48);
}
if(entero!=0)
{
escribir_lcd(entero+48);
nulos = 1;
}
valor = valor - (entero*1000);
//************************************************************
entero = valor / 100;
if(entero == 0 & nulos == 1)
{
escribir_lcd(entero+48);
}
if(entero!=0)
{
escribir_lcd(entero+48);
nulos = 1;
}
valor = valor - (entero*100);
//************************************************************
entero = valor / 10;
if(entero == 0 & nulos == 1)
{
escribir_lcd(entero+48);
}
if(entero!=0)
{
escribir_lcd(entero+48);
nulos = 1;
}
valor = valor - (entero*10);
escribir_lcd(valor+48);
}
Pues eso, no se me ocurre cual podria ser el error, se me ahce que con el numero 40.0000 hace una operacion matematica que excede la "cantidad" de "numeros" que puede manejar el pic...