STM32F4的外部晶振不同带来的改变
这个我话题我以前写过一个文章:
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 */
其实这个链接早就做了回答:
另外这个链接 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好呢?
这个链接有讨论:
另外感觉 ST早期的例子用的是8M,后期的例子用的是25M