Hallo,
ich habe einen PIC32MX250F128B (die 40 MHz Version). Ich würde gerne den
Prozessor auch mmit 40 MHz betreiben, doch ich bekomme es leider nicht
hin. Ich habe einen externen Quarz (8 MHz) an OSC1 und OSC2
angeschlossen. Meine Konfigurations-Bits sehen wie folgt aus:
1 | #pragma config UPLLEN = ON
|
2 | #pragma config UPLLIDIV = DIV_1
|
3 | #pragma config FPLLMUL = MUL_20
|
4 | #pragma config FPLLIDIV = DIV_10
|
5 | #pragma config FPLLODIV = DIV_1
|
6 | #pragma config FPBDIV = DIV_1
|
7 | #pragma config FWDTEN = OFF
|
8 | #pragma config WDTPS = PS1
|
9 | #pragma config FCKSM = CSDCMD
|
10 | #pragma config OSCIOFNC = OFF
|
11 | #pragma config POSCMOD = XT
|
12 | #pragma config IESO = ON
|
13 | #pragma config FSOSCEN = OFF
|
14 | #pragma config FNOSC = PRIPLL
|
15 | #pragma config CP = OFF
|
16 | #pragma config BWP = OFF
|
17 | #pragma config PWP = OFF
|
18 | #pragma config ICESEL = ICS_PGx1
|
19 | #pragma config JTAGEN = OFF
|
20 | #pragma config DEBUG = ON
|
Des Weiteren rufe ich während der Initialisierung folgende Funktionen
auf:
1 | SYSTEMConfigPerformance(40000000ul);
|
2 | mOSCSetPBDIV(OSC_PB_DIV_1);
|
Warum ich vermute, dass es nicht richtig funktioniert ist, dass mein
Timer (den ich genauso bei einem PIC32MX795F512L verwende) nicht richtig
läuft. Ich vermute irgendwelche Konfigurationsbits (FPLLMUL, FPLLIDIV,
FPLLODIV) passen nicht. Wir berechnet man diese Werte (gibt es da eine
Formel?)
Aus dem Handbuch vom PIC32MX 1/2 bin ich leider auch nicht schlau
geworden.
Kann mir jemand helfen?