Hello,
I've been working with a board MCBSTR9 and I thought I had correctly configured the PLL so that I was working at the maximum frequency.
However, revising the configuration in the startup file provided by Keil, I've seen that the following values were set in the PLL configuration:
P = 3; N = 192; M = 25
, which, according to all the manuals I've seen, produces an fPLL frequency of 48MHz (the oscillator's frequency is 25MHz).
So, I changed the value of P to 2, to theorically get a frequency of 96MHz. However, the board don't even start running.
I changed the parameters to several values which should produce a 96MHz output in the PLL, but nothing worked. Restoring a frequency of 48MHz works fine.
I can't see where's my mistake. What am I doing wrong?
That's the thing. It *shouldn't* affect, but it clearly does, because the "clock timer" I've made as a test actually slows down when I set up the FMI Divider. I've already gone through all the stuff about this topic in the Reference Manual, but what I'm seeing contradicts what the manual says.
To summarize:
- I couldn't set the PLL frequency to 96MHz, because the board froze when I loaded the program to the ROM.
- Then I saw that programming the ROM at 96MHz doesn't work properly, so I slowed down the ROM clock by setting up the FMI Divider.
- This shouldn't affect the timers' speed, but the fact is -it does. So that makes me think that setting up the FMI divider efectivelly reduces in half the overall speed. I say this because the timer works well (counts seconds correctly), when I set the parameters for a 96MHz clock frequency, BUT THE PLL IS SET FOR 48MHz (at least, according to the manual).
- The same thing happens if I set the PLL for 96MHz and, at the same time, set the FMI divider.
- If I set the PLL for 48MHz and the FMI divider, the timer runs at half the speed it should.
I mean, it does makes sense (if the ROM goes slower, it "feeds" the microprocessor with instructions at a lower rate). What I don't understand is why such a thing is not mentioned in the manual. Or, if I'm wrong and it doesn't make sense at all, I can't see what's happening.
I'm sure that it's probably my fault and that I'm making a stupid mistake. I hope I'm not bothering you guys so much. You're always very helpful.
Cheers, Rubén