This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

F5528 MCLK从DCO频率输出24M,设置后会重启问题

F5528 DCO频率输出24000,代码如下:

#define UCS_MCLK_DESIRED_FREQUENCY_IN_KHZ 24000
#define UCS_MCLK_FLLREF_RATIO 732

//Set Ratio and Desired MCLK Frequency and initialize DCO
UCS_initFLLSettle(
UCS_MCLK_DESIRED_FREQUENCY_IN_KHZ,
UCS_MCLK_FLLREF_RATIO
);

调用UCS_initFLLSettle MCU会重启,这个是什么原因? 按理5528是支持最大25MHz

  • 重新查了一下文件,F5/F6的UCS_initFLLSettle函数只需要两个参数

  • 你的VCORE是多少?要有足够的内核电压来支持这么高的时钟频率

  • Vcore没有配置。。。用默认的了

  • 内核电压要配置为PMMCOREV_3才能跑到那么高的频率

  • 是的。

    我配置内核电压后,能跑24M频率。。

    不过高频率后,然后跑750000波特率,按那个工作配置波特率分频,反而波特率误差更大,,几乎无法通讯。。。

    8192000的时候,反而基本都正确。。这个是什么情况?   难道是内部时钟的,FLL倍频上去后误差反而更大的缘故吗?

  • 750K对于F5528来说真的太高了,误码率会很高的

    而且对于一个极限频率来说,并不是频率越高误码率越低。当然假设你的频率相对你的波特率足够高的话,确实是频率越高误码率越小

    但是你现在的高频波特率对MSP430的最高主频来说仍然是太高了

    在我们列举的例子中,也不完全是频率越高误码率越高,不是纯线性的关系。

  • 我现在用内部的REFO跑了750000波特率,,貌似还可以。。可能改为外部晶振会更好点。。