Buenas a todos,
Estoy peleandome con el reloj (Los relojes) del PIC32MX534F064H.
Por lo que he logrado entender es que hay 5 osciladores. 2 Osciladores internos, y 3 usan cristal
De los relojes principales dentro del PIC:
SYSCLK usado por CPU y algunos periféricos (Se puede generar por cualquiera de las 5 fuentes de reloj)
PBCLK usado por la mayoría de periféricos.
....
....
....
Me gustaría generar 80 MHz en SYSCLK con la fuente de reloj del Oscilador interno de Alta velocidad (FRC).
Y con el Timer1, para comprobar que genero los 80MHz correctamente enciendo y apago un LED (supuestamente cada segundo)
sería con el siguiente código para generar los 80MHz??
#include <stdio.h>
#include <stdlib.h>
#include <p32xxxx.h>
#include <plib.h>
//Bits configuración
#pragma config POSCMOD = OFF
#pragma config FNOSC = FRCPLL
#pragma config FPLLIDIV = DIV_2
#pragma config FPLLMUL = MUL_20
#pragma config FPLLODIV = DIV_1
//#pragma config FPBDIV = DIV_1
#define T1_TICK 312500
int main (void)
{
AD1PCFG = 0xFFFF;
_TRISF3=0;
OpenTimer1(T1_ON | T1_SOURCE_INT | T1_PS_1_256, T1_TICK);
IPC1bits.T1IP = 2;
IPC1bits.T1IS = 1;
IFS0bits.T1IF = 0;
INTEnableSystemMultiVectoredInt();
IEC0bits.T1IE = 1;
while(1);
}
void __ISR(_TIMER_1_VECTOR, ipl2) Timer1Handler (void)
{
_LATF3 = ~_LATF3;
IFS0bits.T1IF = 0;
}
Muchas gracias.
Un saludo.