发布网友 发布时间:2024-05-01 12:32
共1个回答
热心网友 时间:2024-05-09 16:04
晶振11.0592与12.0000的区别是:11.0592是精密晶振,主要是方便于算串口通信的波特率,而12.0000虽然也能用,但波特率达不到9600。
并且石英晶振就是用石英材料做成的石英晶体谐振器,俗称晶振。起产生频率的作用,具有稳定,抗干扰性能良好的特性。
广泛应用于各种电子产品中。石英晶体提供了两种共振模式,由C1与L1构成的串联共振,与由C0、C1与L1构成的并联共振。
并且1个机器周期 = 6个状态周期;1个状态周期 = 2个震荡周期;1个机器周期 = 12 个震荡周1M Hz = 1000 000 次震荡/秒。
那么一个机器周期所需要的时间为:如果震荡周期为12M。
1个机器时间的周期 = 12次震荡/震荡频率 = 12 /(12M hz)= 12 / (12 * 1000 1000/s) = 1 s /1000 1000 = 1us(一微秒)如果为11.0592M那么除不尽。所以使用定时器延迟的时候 12M晶振最为合适,延时计时更佳准确。
晶振在机器中的使用用量是:
标准的51单片机晶振是1.2M-12M,一般由于一个机器周期是12个时钟周期,所以先12M时,一个机器周期是1US,好计算,而且速度相对是最高的(当然现在也有更高频率的单片机)。
11.0592M是因为在进行通信时,12M频率进行串行通信不容易实现标准的波特率,比如9600,4800,而11.0592M计算时正好可以得到,因此在有通信接口的单片机中,一般选11.0592M。
而TH1 的值只能取整数,这样它就会有一定的误差存在不能产生精确的9600 波特率。当然一定的误差是可以在使用中被接受的。
就算使用11.0592M 的晶体振荡器也会因晶体本身所存在的误差使波特率产生误差,但晶体本身的误差对波特率的影响是十分之小的,可以忽略不计。