自从12年毕业的时候,开始是做硬件设计的,第一次工作的时候就没有绘制STC的晶振电路,主要是考虑到可以选择芯片内部的晶振频率,听老硬件工程师说,不管咋样一定要给芯片绘制外部时钟电路,不要依靠内部的晶振频率。当时还不知道为什么要这样做,通过这几年的磨练,尤其是从硬件工作转型到做软件工作,才真正的了解到晶振的重要性,
这段时间,在使用国产MCU控制器,STC芯片和ST芯片才知道,对于系统时钟要求不高的情况是可以使用内部晶振的,而且厂家也会告知内部晶振不准确的情况,但是如果项目上要求不高的情况是没问题的,但是像是具有USB功能情况下,就必须要使用外部时钟,再比如SPT通讯时,IIC通讯时,时钟不准确的情况,是不能正常使用的。下面我就对外部时钟和内部时钟做一个简单的对比;
内部时钟:
优点:
价格低廉。由于是内嵌到单片机内部,可以少使用启动电容,在一定程度上,降低了PCB的成本。
功耗低:对于需要低功耗的产品来说,是一个不错的选择。
布局简单:无需外部电路,使电路看起来更加的简单。
缺点:
计时不准确,可能制作一个秒表都会有误差的,而且使系统误差无法消除。
抗干扰能力差:受外部影响也会导致程序错乱。
外部晶振:
精度高:只要是外部晶振起振了,用示波器测量一下,基本是没有误差的,这个我测试很多次了
抗干扰能力强:相比内部晶振稳定性很好,受外部影响因素小。。。
为外设或者内部程序运行提供精准的时钟来源
缺点:
价格高、布局负载些,错误的布局可能会引入噪声干扰。
综上所述:不管是外部时钟源还是内部时钟源,我们要从多方面考虑,才能更好的完成项目需求,。
|