No se puede ejecutar pic18

0

Ahora estoy familiarizado con los pic16, por lo que me estoy moviendo hacia la serie pic18.

Sin embargo, no puedo obtener ninguna alegría de ellos.

Tengo una pic18f4455 y una pic18f14k50, ninguna de las cuales puedo ponerme a trabajar. Tengo muchas ganas de conseguir el 4455 para ir.

Tengo el circuito habitual del oscilador xtal + 2cap, que oscila alegremente. Tengo el programa habitual de parpadeo parpadeado en él. Pero simplemente no está ejecutando el programa. Mi teoría es que los registros CONFIG demasiado complejos no están bien definidos.

Estoy usando sdcc en Ubuntu, y tengo mi configuración configurada de esta manera:

__code char __at __CONFIG1L c1l = _USBPLL_CLOCK_SRC_FROM_96MHZ_PLL_2_1L & _CPUDIV__OSC1_OSC2_SRC___1__96MHZ_PLL_SRC___2__1L & _PLLDIV_NO_DIVIDE__4MHZ_INPUT__1L;
__code char __at __CONFIG1H c1h = _OSC_HS__HS_PLL__USB_HS_1H & _FCMEN_OFF_1H & _IESO_OFF_1H;
__code char __at __CONFIG2L c2l = _VREGEN_OFF_2L & _PUT_OFF_2L & _BODEN_OFF_2L;
__code char __at __CONFIG2H c2h = _WDT_DISABLED_CONTROLLED_2H;
__code char __at __CONFIG3H c3h = _PBADEN_PORTB_4_0__CONFIGURED_AS_DIGITAL_I_O_ON_RESET_3H & _LPT1OSC_OFF_3H & _MCLRE_MCLR_ON_RE3_OFF_3H;
__code char __at __CONFIG4L c4l = _LVP_OFF_4L & _ENHCPU_OFF_4L;                    // Disable LVP
__code char __at __CONFIG5L c5l = _CP_0_OFF_5L & _CP_1_OFF_5L & _CP_2_OFF_5L & _CP_3_OFF_5L;
__code char __at __CONFIG5H c5h = _CPD_OFF_5H & _CPB_OFF_5H;
__code char __at __CONFIG6L c6l = _WRT_0_OFF_6L & _WRT_1_OFF_6L & _WRT_2_OFF_6L & _WRT_3_OFF_6L;
__code char __at __CONFIG6H c6h = _WRTD_OFF_6H & _WRTB_OFF_6H & _WRTC_OFF_6H;
__code char __at __CONFIG7L c7l = _EBTR_0_OFF_7L & _EBTR_1_OFF_7L & _EBTR_2_OFF_7L & _EBTR_3_OFF_7L;
__code char __at __CONFIG7H c7h = _EBTRB_OFF_7H;

Sé que algunos de ellos no son necesarios, pero lo he intentado sin nada, solo los necesarios, y con todo. Nada parece funcionar.

No sé cuál es la mejor manera de configurar los registros de configuración en este chip en sdcc - g00gle no parece tener mucha pista a menos que estés usando MPLAB.

Entonces, ¿alguna pista? ¿Algo que no haya podido ver porque es tan obvio?

    
pregunta Majenko

1 respuesta

1

Elimine todas esas cosas de configuración, y simplemente apague el WDT. Debe funcionar con el oscilador interno de 8 MHz y encender su LED. Puedo hacer eso con el PIC18F2455 similar. Si eso no funciona, es posible que tenga un problema de hardware.

Encontrará las cosas mucho más fáciles si usa MPLAB y el compilador C18. Si no quieres usar Windows, puedes usar el nuevo MPLAB-X, hay una versión para Linux.

    
respondido por el Leon Heller

Lea otras preguntas en las etiquetas