Mis bits de configuración son los siguientes:
#include <P16F1503.inc>
__CONFIG _CONFIG1, _FOSC_INTOSC & _WDTE_OFF & _PWRTE_ON & _MCLRE_OFF & _CP_OFF & _BOREN_OFF & _CLKOUTEN_OFF
__CONFIG _CONFIG2, _WRT_OFF & _STVREN_OFF & _LVP_OFF
La parte relevante del código que estoy usando para cambiar la frecuencia es esta:
banksel OSCCON
movlw b'01101000' ; Int. osc. 4 MHz
movwf OSCCON
btfss OSCSTAT, HFIOFR ; Is internal oscillator running?
goto $-1 ; No, loop one line back...
btfss OSCSTAT, HFIOFS ; Is internal oscillator stable?
goto $-1 ; No, loop one line back...
Desafortunadamente, mi herramienta de depuración es solo un simulador. El problema es que la ejecución nunca llega al punto de interrupción en la línea 192:
¿Esto significa que el oscilador interno nunca se estabiliza?
Estoy usando:
- IDE: MPLAB X IDE v1.20
- Compilador: MPASM v5.45
¿Qué estoy haciendo mal?