单片机要运行起来,必须有一个时钟信号,就好像人的心跳。这个时钟信号可以由无源晶振提供,可以由有源晶振提供,目前大部分的单片机也集成了内部振荡器。今天就来聊聊这三者的区别。
1.内部振荡器
单片机内部集成的振荡器,一般为RC振荡器,好多人叫“内部晶振”,其实是不准确的。RC振荡器原理如下:
其优点是实现的成本比较低,缺点是由于电阻电容的精度问题,所以RC振荡器的震荡频率误差较大,同时受到温度、湿度的影响,这个跟元器件的工艺有关。
一般系统中对时钟精度要求较高时,就不能使用内部RC振荡器。当然,现在也有单片机的内部RC振荡器可以做到较高的精度,满足一些UART通讯的应用,但相对于外部振荡器来说,精度还是相对偏低。
2.无源晶振
英文名Crystal,严格来说应该叫晶体谐振器,它不是一个完整的振荡器,需要配合外部电路来实现振荡器的功能。如下图:
无源晶振有陶瓷和石英两种材质的,石英材质的精度要高于陶瓷材质的。
无源晶振的精度一般在10~50ppm,好点的能到10ppm以内,可以满足大部分的应用。
3.有源晶振
英文名Oscillator,是真正的晶体振荡器,不需要外部器件,只要供上电就能输出振荡信号。如下图:
相对于无源晶振,有源晶振信号稳定,质量较好,而且连接方式比较简单(主要做好电源滤波),不需要复杂的配置电路。
有源晶振也有很多种:普通有源晶振、恒温晶振、温补晶振、压控晶振、压控恒温晶振等。一些好的有源晶振频率稳定度可以做到ppb(10-9)级别,主要在一些对频率精度要求特别高的场合应用。
总结一下:
- 内部RC振荡器精度较差、价格最低(集成在单片机内部)。
- 无源晶振精度稍高,能满足大部分应用,成本适中。
- 有源晶振信号稳定、精度较高,成本也较高。
欢迎关注公众号"嵌入式技术开发",大家可以后台给我留言沟通交流。如果觉得该公众号对你有所帮助,也欢迎推荐分享给其他人。