Hola muchachos, para solicitarles su ayuda, estoy trabajando con un pic 18F46K20 y CCS 4.088.
Este pic tiene oscilador interno que puede correr hasta 64Mhz (16MIPS), ando haciendo pruebas y pues no me llega a esta frecuencia, con la siguiente configuracion solo he logrado que llege a 8 Mhz (el CCS no me acepta 16Mhz por los defines de setup_oscillator que tiene):
#fuses INTRC_IO
setup_oscillator(OSC_4MHZ|OSC_INTRC); >>>> con el 4Mhz logre 8 Mhz, error de CCS lineas abajo se observa.
Buscando el el archivo del pic que viene en la carpeta DEVICES del CCS encuentro lo siguiente:
// Constants used in setup_oscillator() are:
#define OSC_31KHZ 0
#define OSC_125KHZ 0x10
#define OSC_250KHZ 0x20
#define OSC_500KHZ 0x30
#define OSC_1MHZ 0x40
#define OSC_2MHZ 0x50
#define OSC_4MHZ 0x60
#define OSC_8MHZ 0x70
lo cual no concuerda con el datasheet que dice:
IRCF<2:0>: Internal Oscillator Frequency Select bits
111 = 16 MHz (HFINTOSC drives clock directly)
110 = 8 MHz
101 = 4 MHz
100 = 2 MHz
011 = 1 MHz(3)
010 = 500 kHz
001 = 250 kHz
000 = 31 kHz (from either HFINTOSC/512 or LFINTOSC directly)(2)
Y los fuses que presenta el CCS son:
LP,XT,HS,RC,EC,EC_IO,H4,RC_IO,INTRC,INTRC_IO
En el cuadro del oscilador que se presenta en el datasheet, se observa conexion entre el oscilador interno a 16Mhz para meterlo por el PLLx4, logrando asi los 64Mhz que deseo.
El CCS no tiene (o sera que no veo) como conectar el osc interno con PLLx4 y lograr los 64 Mhz.
Hay manera de manejar los bits y cargar las configuraciones manualmente?
Saludos.