STM32F4的外部晶振不同带来的改变

本文详细探讨了STM32F4系列微控制器的时钟配置方法,包括system_stm32f4xx.c文件的修改要点,以及如何调整外部晶振频率从8M到25M的过程。文中还提到了FSMC配置和调试设置的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个我话题我以前写过一个文章:

STM32F4的system_stm32f4xx.c文件需要根据不同板卡进行修改

不过写的不够细致。

现在有必要细细写一下:

(1)stm32f4xx.h里面的

(2)

system_stm32f4xx.c

外部内存的FSMC也要改(改了肯定OK,不改行不行我不大清楚)(后来试验了,下面这句不改也可以)

readWriteTiming.FSMC_CLKDivision = 0x04;改为 writeTiming.FSMC_CLKDivision = 0x00;

就是说经过上面两处改动,系统时钟仍然是168M,如下:

#if defined(STM32F40_41xxx)
  uint32_t SystemCoreClock = 168000000;
#endif /* STM32F40_41xxx */

其实这个链接早就做了回答:

将外部晶振8M改为25M,程序应该怎样修改?

另外这个链接  http://www.icfans.com/question/199168724392087552

说还要改

修改STM32F407工程的Options设置

在Option for target"Flash"窗口中,选择Target页面,修改STMicroelectronics STM32F407VG栏中Xtal(MHz)的值为25.0

这个链接STM32晶振8M改12M方法说出了  修改Options设置的原因。

这个链接STM32使用非8M晶振时如何修改代码 也说出了修改Options设置的原因。和上面链接原因一样,就是影响调试的观察值。

那么  25M好 还是8M好呢?

这个链接有讨论:

STM32F429的外部晶振用8M和25M两种有什么区别?

另外感觉 ST早期的例子用的是8M,后期的例子用的是25M

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值