[MCU开发工具资源区] 怎么样从芯片内部时钟转换到外部时钟?

[复制链接]
1124|13
 楼主| 海滨消消 发表于 2023-4-22 15:00 | 显示全部楼层 |阅读模式
怎么样从芯片内部时钟转换到外部时钟?
pssyx 发表于 2023-4-23 11:12 | 显示全部楼层
关于时钟切换,请参考CW32 MCU的Lib文件中的RCC例程。需注意的一点,必须等到外部时钟启动稳定之后,才能进行切换。
tpgf 发表于 2023-5-8 14:10 | 显示全部楼层
pssyx 发表于 2023-4-23 11:12
关于时钟切换,请参考CW32 MCU的Lib文件中的RCC例程。需注意的一点,必须等到外部时钟启动稳定之后,才能进 ...

请问 如何确定外部时钟已经启动稳定了呢
qcliu 发表于 2023-5-8 14:34 | 显示全部楼层
更改时钟配置后,大概多长时间就可以生效啊
pssyx 发表于 2023-5-8 14:49 | 显示全部楼层
tpgf 发表于 2023-5-8 14:10
请问 如何确定外部时钟已经启动稳定了呢

查询各外部晶体控制寄存器的STABLE位是否为1?如为1,则该晶体时钟已经稳定,比如:SYSCTRL_LSE 外置低频晶体控制寄存器,SYSCTRL_HSE 外置高频晶体控制寄存器,详细操作,请查阅CW32 MCU的用户手册的“复位和时钟(RCC)"章节。
pssyx 发表于 2023-5-8 14:57 | 显示全部楼层
qcliu 发表于 2023-5-8 14:34
更改时钟配置后,大概多长时间就可以生效啊

非常快,ns级,从硬件来看,其实就是切换一个数字电路的多选一的开关而已。
drer 发表于 2023-5-8 15:16 | 显示全部楼层
一般来说是不是内部时钟都是高速时钟呢
pssyx 发表于 2023-5-8 15:29 | 显示全部楼层
drer 发表于 2023-5-8 15:16
一般来说是不是内部时钟都是高速时钟呢

与MCU有关,内部时钟也可以是低速时钟。
coshi 发表于 2023-5-8 15:32 | 显示全部楼层
在进行时钟转换的时候 正在运行的外设怎么处理呢
kxsi 发表于 2023-5-8 15:51 | 显示全部楼层
coshi 发表于 2023-5-8 15:32
在进行时钟转换的时候 正在运行的外设怎么处理呢

估计是需要进行相应更改的 或者不更改的话 跟随新的时钟源 产生新的变化
pssyx 发表于 2023-5-8 16:03 | 显示全部楼层
coshi 发表于 2023-5-8 15:32
在进行时钟转换的时候 正在运行的外设怎么处理呢

MCU的时钟切换之后,部分与时钟密切相关的外设,比如:UART、定时器等,这些外设的时钟源都需要重新配置为新的时钟。因此,此类外设最好在时钟切换前完成当前任务,等待新的时钟切换。
wiba 发表于 2023-5-8 16:08 | 显示全部楼层
请问一下芯片的外部时钟都有哪些时钟源呢?
pssyx 发表于 2023-5-8 16:16 | 显示全部楼层
wiba 发表于 2023-5-8 16:08
请问一下芯片的外部时钟都有哪些时钟源呢?

CW32 MCU的系统时钟 SYSCLK 有 4 个时钟源:
•        外部高速振荡器时钟(HSE)
•        外部低速振荡器时钟(LSE)
•        HSI 时钟,由内部高速 RC 振荡器时钟(HSIOSC)经过分频产生
•       内部低速 RC 振荡器时钟(LSI)
Bowclad 发表于 2023-5-8 22:35 | 显示全部楼层
晶振的稳定时间很短的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

275

主题

1996

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部