Joe7680 发表于 2024-7-9 15:36:54

【求助】SWM320_CSL 中系统时钟设置不成功?

本帖最后由 Joe7680 于 2024-7-9 15:56 编辑

本问题中的代码来自库 https://gitee.com/synwit-co-ltd/SWM320_Lib.git 中 SimplUART 示例代码,最后更新时间 2024-06-12 13:54:09。


在 system_SWM320.c 中,原代码中定义的宏:
#define SYS_CLK_DIV         SYS_CLK_DIV_1现需对系统时钟 2 分频,遂将此宏改为
#define SYS_CLK_DIV         SYS_CLK_DIV_2重编译下载运行后发现,变量 SystemCoreClock 由原来的 120MHz 改为了 60 MHz,但此时系统的实际运行时钟仍为 120 MHz。

以下是验证的代码截图:

添加以一定时间间隔循环输出 SystemCoreClock 值的代码:



原始宏定义(SYS_CLK_DIV = 0):


SYS_CLK_DIV = 0 时的串口输出


从上图中可以看出,添加的 for 循环,延时了约 840ms

然后,更改 SYS_CLK_DIV = 1,编译下载运行



SYS_CLK_DIV = 1 时的串口输出



从上图可以看出,添加的 for 循环所产生的延时仍为约 840ms,但此时的 SystemCoreClock 取值改为了 60 MHz,波特率也由之前的 57600 改为了 115200。


请问问题出在哪儿?

XIVN1987 发表于 2024-7-18 10:16:55


抱歉,,实测了一下320没有系统时钟二分频功能,,代码中已经删除,,感谢反馈。。
SWM320_Lib: SWM320 外设库 (gitee.com)

页: [1]
查看完整版本: 【求助】SWM320_CSL 中系统时钟设置不成功?