feixiang20 发表于 2018-8-13 23:17:09

要是有仿真器可以在时钟分频的地方加一个断点,初始化仿真看下程序跑到那里的时候是什么频率就能知道是外部晶振还是内部晶振了。也可直接看电路板上没有外部晶振就是用的内部的。单片机的时钟信号由外部振荡和内部振荡两种方式取得 在引脚XTAL1和XTAL2外接晶振振荡器或陶瓷谐振器,就构成了单片机的内部振荡方式。

zhao.zhao 发表于 2018-8-14 11:04:10

yigehaorens 发表于 2018-8-13 21:19
那会不会在判断出没有外部晶振后才使用内部HSI呢?

这个要查看库函数怎么写的,标准库时好像不行。当设为外部晶振后,软件会等待外部晶振稳定工作,如果超时了,就会进入硬件故障中断,死了。

yigehaorens 发表于 2018-8-15 17:45:47

我测了下,在没有外部晶振时跑的系统时钟慢,突然加上外部晶振时钟就快。程序应该能在线判断有无外部晶振,有就用没有就用内部

toofree 发表于 2018-8-15 18:07:33

直接看程序,是看不出到底使用的哪个晶振的。
因为,有时即便程序是写的使用外部晶振,但由于外部没有接晶振,或者晶振不起振等原因,依然会保持使用内部晶振。
能切到外部晶振的前提是,在切换代码,外部晶振正常。

还有一点需要注意,总的系统时钟不要超太多。比如STM32F103,外部晶振时,系统时钟最快72MHz;当使用内部晶振时,系统时钟最快64MHz
页: 1 [2]
查看完整版本: 默认晶振