原因1、早些年, 芯片的出产制造工艺或许还不能够将晶振做进芯片内部, 可是现在能够了。这个问题首要仍是实用性和本钱决议的。
原因2、芯片和晶振的资料是不同的, 芯片 (集成电路) 的资料是硅, 而晶体则是石英 (二氧化硅), 无法做在一同, 可是能够封装在一同, 现在现已能够完成了, 可是本钱就比较高了。

原因3、 晶振一旦封装进芯片内部, 频率也固定死了, 想再替换频率的话, 底子也是不可能的了, 而放在外面, 就能够自在的替换晶振来给芯片供应不同的频率. 有人说, 芯片内部有 PLL, 管它晶振频率是多少, 用 PLL 倍频/分频不就能够了, 那么这有回到本钱的问题上来了, 100M 的晶振集成到芯片里, 但我用不了那么高的频率, 我只想用 10M 的频率, 那我为何要去买你集成了 100M 晶振的芯片呢, 又贵又糟蹋。

咱们一般所说的 "片内时钟", 是不是实践上片内底子没有晶振, 是有RC 振荡电路。

由图能够看出体系时钟的供应能够有3种办法,HSI,HSE,PLL。假如选用内部时钟作为体系时钟,其倍频达不到72Mhz,最多也就8Mhz/2*16 = 64Mhz。
假如运用内部RC振荡器而不运用外部晶振,请依照如下办法处理:
1)关于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空。
2)关于少于100脚的产品,有2种接法:
i)OSC_IN和OSC_OUT别离经过10K电阻接地。此办法可进步EMC功能。
ii)别离重映射OSC_IN和OSC_OUT至PD0和PD1,再装备PD0和PD1为推挽输出并输出'0'。此办法能够减小功耗并(相对上面i)节约2个外部电阻。
STM32时钟体系结构图
时钟是STM32单片机的脉息,是单片机的驱动源。运用任何一个外设都必须翻开相应的时钟。这样的优点便是,假如不运用一个外设的时分,就把它的时钟关掉,然后能够下降体系的功耗,到达节能,完成低功耗的作用。
STM32单片机的时钟能够由以下3个时钟源供应:
1、HSI:高速内部时钟信号STM32单片机内带的时钟 (8M频率), 精度较差
2、HSE:高速外部时钟信号,精度高。
来历:i. HSE外部晶体/陶瓷谐振器(晶振);
ii.HSE用户外部时钟
3、LSE:低速外部晶体 32.768kHz 首要供应一个准确的时钟源 一般作为RTC时钟运用。