打印
[STM32N6]

如何在STM32中配置外部时钟源?

[复制链接]
701|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dd5yit|  楼主 | 2025-2-28 23:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STM32如何使用外部晶振或外部时钟源,而不是内部时钟?

使用特权

评论回复
沙发
公羊子丹| | 2025-3-2 08:12 | 只看该作者
STM32N6 支持外部晶振(HSE)和外部时钟(外部提供的时钟信号),你是想用晶振(带无源谐振器)还是直接输入外部时钟?

使用特权

评论回复
板凳
周半梅| | 2025-3-2 08:13 | 只看该作者
如果使用外部晶振,需要在 RCC_CR 里使能 HSEON,然后等待 HSERDY 置位,确保晶振启动成功后再切换时钟源。

使用特权

评论回复
地板
帛灿灿| | 2025-3-2 08:14 | 只看该作者
对于外部时钟(例如 FPGA 或 TCXO 提供的时钟),可以直接将信号接到 OSC_IN 引脚,并在 RCC->CFGR 里选择 HSE_BYP 模式。

使用特权

评论回复
5
童雨竹| | 2025-3-2 08:15 | 只看该作者
你可以在 SystemClock_Config() 里使用 HAL_RCC_OscConfig() 选择 RCC_OSCILLATORTYPE_HSE,确保正确启用外部晶振。

使用特权

评论回复
6
万图| | 2025-3-2 08:17 | 只看该作者
STM32N6 可能支持多个 PLL 时钟源,你是想让 HSE 直接驱动系统时钟,还是让 HSE 通过 PLL 放大到更高频率?

使用特权

评论回复
7
Wordsworth| | 2025-3-2 08:18 | 只看该作者
如果外部时钟不稳定,可以在 RCC_CIR 里使能 HSE 失效检测(CSS),这样当 HSE 出现故障时,MCU 可以自动切换回 HSI。

使用特权

评论回复
8
Bblythe| | 2025-3-2 08:19 | 只看该作者
你使用的是 LSE(低速外部晶振)还是 HSE(高速外部晶振)?LSE 一般用于 RTC,启动时间较长,而 HSE 主要用于系统时钟。

使用特权

评论回复
9
Pulitzer| | 2025-3-2 08:20 | 只看该作者
在 STM32CubeMX 里,可以在 RCC 选项中选择 HSE 作为 SYSCLK,并启用 PLL,自动生成初始化代码,避免手动配置出错。

使用特权

评论回复
10
Uriah| | 2025-3-2 08:21 | 只看该作者
你的外部晶振频率是多少?STM32 通常支持 4MHz 到 50MHz 的 HSE,如果频率不在这个范围内,可能需要 HSE_BYP 方式输入稳定时钟信号。

使用特权

评论回复
11
Clyde011| | 2025-3-2 08:23 | 只看该作者
如果使用 HSE 作为 PLL 时钟源,务必确保 HSE 频率和 PLL 设定的倍频系数符合 SYSCLK 频率要求,否则可能会导致系统不稳定。

使用特权

评论回复
12
失物招領| | 2025-3-22 01:23 | 只看该作者
默认不就是外部晶振吗

使用特权

评论回复
13
她已醉| | 2025-3-22 02:34 | 只看该作者
通过STM32RCC(复位和时钟控制)模块配置时钟树,选择外部时钟源

使用特权

评论回复
14
将爱藏于深海| | 2025-3-22 03:34 | 只看该作者
在代码中配置RCC寄存器以选择外部时钟源。一般就可以了

使用特权

评论回复
15
温室雏菊| | 2025-3-22 04:37 | 只看该作者
使用调试工具或示波器检查系统时钟频率,确保配置正确

使用特权

评论回复
16
春日负喧| | 2025-3-22 05:34 | 只看该作者
确认外部晶振或时钟源正常工作

使用特权

评论回复
17
故意相遇| | 2025-3-22 06:34 | 只看该作者
建议晶振频率与STM32型号支持的频率匹配

使用特权

评论回复
18
白马过平川| | 2025-3-22 07:34 | 只看该作者
根据应用需求调整PLL配置以获得所需系统时钟频率

使用特权

评论回复
19
西洲| | 2025-3-22 08:26 | 只看该作者
这种直接找个例程就能解决你的问题啊

使用特权

评论回复
20
风凉| | 2025-3-22 09:34 | 只看该作者
我觉得你应该看看正点原子的例程,都是外置时钟源的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

68

帖子

0

粉丝