Edito el mensaje porque la situacion actual es totalmente distinta. Hoy he estado probando de grabar el programa y no da ningun error ( en el debug si) y no funciona. He mirado el datasheet para ver si utilitzaba los puertos correctos y he grabado un programa de prueba mas que nada para comprobar si funcionaba y si estaba grabando bien. Todo esto ha ido bien pero el programa sigue sin funcionar.
Es simplemente el programa que encendia el led cuando el pulsador estaba pulsado y lo apagaba cuando no. Creo que es un tema de fuses, que no lo configuro del todo bien. Me gustaria que alguien pudiese darme su opinion al respecto o algun ejemplo parecido.
Edito1: Acabo de encontrar un fichero donde explica como son les config de cada PIC en mi caso pero no se como relacionar esos numeros en HEX con las posibles palabras:
[b][18F4550][/b]
[b]CFGS_UNPROG=1,35C0,2,FFDF,3,F3FF,4,FF9F,5,FFFF,6,FFFF,7,FFFF[/b]
CFGS_UNPROG=<config word number>,<unprogrammed value>,...
# This is used to specified the unprogrammed value of a configuration word.
# Entries for each word are entered as a list of pairs as above.
# Every config word must be specified
# <config word number> = 1,2,3, etc
# <unprogrammed value> = a hex number, don't need to indicate radix
No se como relacionar 35C0 con las posibles opciones:
// config word 1
// USB Clock Selection
#define USBPLL 0xFFDF // clk src from 96MHz PLL/2
#define USBOSC 0xFFFF // clk src from OSC1/OSC2
// CPU Sys CLK Select
#define CPUDIV4 0xFFE7 // div by 4
#define CPUDIV3 0xFFEF // div by 3
#define CPUDIV2 0xFFF7 // div by 2
#define CPUDIV1 0xFFFF // no divide
#define PLLPOSTDIV6 CPUDIV4 // 96 MHz PLL div by 6
#define PLLPOSTDIV4 CPUDIV3 // 96 MHz PLL div by 4
#define PLLPOSTDIV3 CPUDIV2 // 96 MHz PLL div by 3
#define PLLPOSTDIV2 CPUDIV1 // 96 MHz PLL div by 2
// OSC Select
#define PLLDIV12 0xFFF8 // div by 12 {48MHz input}
#define PLLDIV10 0xFFF9 // div by 10 {40MHz input}
#define PLLDIV6 0xFFFA // div by 6 {24MHz input}
#define PLLDIV5 0xFFFB // div by 5 {20MHz input}
#define PLLDIV4 0xFFFC // div by 4 {16MHz input}
#define PLLDIV3 0xFFFD // div by 3 {12MHz input}
#define PLLDIV2 0xFFFE // div by 2 {8MHz input}
#define PLLDIV1 0xFFFF // no divide {4MHz input}