¿Cuando te refieres a usar oscilador externo, a que tipo te refieres?Hola que tal buen día,
alguien me podría apoyar para poder definir el oscilador externo en el pic16f883.
Hay externo con cristal XT, HS (High Speed), con resonador, R/C y fuente de reloj externa.
Los tipos de palabra de configuración desde el 16F882 hasta el 16F887 son los mismos.
Esta es una configuración clásica con cristal.
Código:
Config1 XT_OSC,LVP_OFF,FCMEN_ON,IESO_OFF,BOR_OFF,CPD_OFF,CP_OFF,MCLRE_ON,PWRTE_ON,WDT_OFF
Config2 WRT_OFF,BOR21V
Config1 LP_OSC, Etc,Etc. (Oscilador con resonador de baja frecuencia. Hasta 200KHz.)
Config1 XT_OSC, Etc,Etc. (Oscilador a Xtal. Hasta 4MHz.)
Config1 HS_OSC, Etc,Etc. (Oscilador a Xtal. Hasta 20MHz.)
Config1 EXTCLK_OSC, Etc,Etc. (Oscilador Digital Externo)
Config1 INTRC_OSC_NOCLKOUT,Etc,Etc. (Oscilador R/C Interno. Sin salida de reloj)
Config1 INTRC_OSC_CLKOUT,Etc,Etc. (Oscilador R/C Interno. Con salida de reloj)
Config1 RC_OSC_NOCLKOUT,Etc,Etc. (Oscilador R/C Externo. Sin salida de reloj)
Config1 RC_OSC_CLKOUT,Etc,Etc. (Oscilador R/C Externo. Con salida de reloj)
Como puedes ver, son 8 tipos diferentes para la selección del oscilador.
El uso del registro OSCCON es sobre todo para cuando se usa el oscilador interno del PIC.
Un ejemplo de configuración para 8MHz estable, sería de esta manera...
OSCCON = %01110101
La información de configuración del registro OSCCON y más información esta en la hoja de datos.
Si deseas utilizar los puertos A y B como digitales, debes establecer los registros ANSEL y ANSELH en 0
ANSEL = 0 ; Puerto A Digital I/O
ANSELH = 0 ; Puerto B Digital I/O
Espero esta información te sea de utilidad.
Suerte.