I've got a Freedom K64F evaluation board and I want to make the MCU run without utilizing the external 50MHz (or whatever else) crystal in the ethernet chip. So it must be able to generate the clock from internal oscillators, up to the max nominal 120 MHz value.
Considering the examples in KSDK_1.2.0/examples/frdmk64f they look quite good to me. As I wanted to avoid digging into the very details of oscillators and clock generation of K64F, I'm at the moment not able to fill such clock_manager_user_config_t structure (provided by KSDK) correctly for all my use cases - but this would be the preferred way to me.
Instead I've decided to click the settings in Processor Expert, have it generated the sources and add those files to my project. It appeared to be the faster way (maybe I was wrong...)
This approach seemed to be alright, since I was able to create the following clock configurations:
- 4MHz using fast internal oscillator;
- 48MHz using slow internal oscillator;
- 96MHz using slow internal oscillator;
The final goal is to reach 120MHz without any external crystal. This can be achieved by the USB 48MHz clock, and of course I've read through AN4905, but still can't make the MCU run from that 48 MHz oscillator. Furthermore, I saw this article as well, still no success. I don't know what I'm doing wrong. When I modified the settings in Processor Expert to switch from e.g. 4MHz to 48MHz, it only altered CPU_Config.h and it was enough to update that file in my project and it worked. Similarly done for the USB 48MHz oscillator case, the board freezes somewhere and not running at all. I have tried many USB 48 MHz configurations, neither of them worked.
Please help me by reviewing my settings or by providing a working KSDK/clock_manager_user_config_t based configuration (or by any other means )
Thanks a lot!
Did you manage to get the standard SDK set up to do this?
I am really suprised they give no examples of how to set this up using the SDK. I really dont want to have to learn all the details just to use the perihperal, its really why we have drivers so I dont need to dive deep into module inernal operation... Surely there is an example of using the internal oscillators to run these processors...