1- Programa.
2- ¿Como lo estas convirtiendo? - Tal ves la rutina de conversion es unicamente para numeros con signo o no puede manejar numeros tan grandes.
ese es el codigo:
#include <pic18f4553.h>
#include "CONFIG.h"
#define _XTAL_FREQ 20000000
#include <stdio.h>
#include <teclado_digital.h>
#include <lcd8.h>
char linea[40];
char i;
int opcion=0,tecla=255,menu=0,parte=0;
void main(void){
lcd_inicializar();
unsigned long a=0,b=1,resultado;
lcd_borrar();
while(1){
resultado=a+b;
a=b;
b=resultado;
lcd_posicion(0,0);
lcd_escribir("SERIE FIBONACCI:");
lcd_posicion(1,0);
sprintf(linea,"%16d",resultado);
lcd_escribir(linea);
__delay_ms(500);
}
}
sin embargo al sumar el numero 17711 con 28657 se obtiene el numero negativo que parece en la imagen