晶振在单片机中的作用
单片机工作时,是一条一条地从CyanogenMod中取指令,然后一步一步地执行。单片机访问一次存储器的时间,称之为一个机器周期,这是一个时间基准。—个机器周期包括十二个时钟周期。如果一个单片机选择了12.000MHz晶振,它的时钟周期是1/12us,它的一个机器周期是12×(1/12)us,也就是1us。
集成在一芯片上的微型计算机 它集成了CPU、RAM、ROM、基本I/O接口电路、定时器、单片机的所有指令中,有一些完成得比较快,只要一个机器周期就行了,有一些完成得比较馒,得要两个机器周期,还有两条指令要四个机器周期才行。为了衡量指令执行时间的长短,又引入一个新的概念:指令周期。所谓指令周期就是指执行一条指令的时间。例如,当需要计算当前变量减1,不等于零转移指令完成所需要的时间时,首先必须要知道晶振的频率,设所用晶振为12MHz,则一个机器周期就是1us。而当前变量减1,不等于零转移指令是双周期指令,所以执行一次要2us。如果该指令需要执行500次,正好1000us,也就是1ms。
机器周期不仅对于指令有着重要的意义,而且机器周期也是单片机定时器和计数器的时间基准。例如一个单片机选择了12MHz晶振,那么当定时器的数值加1时,实际经过的时间就是1us,这就是单片机的定时原理。简单地说,没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码,单片机就无法工作。因此晶振在单片机起着至关重要的作用!