Bootstrap

STM32里晶振是做什么的?时钟周期和时钟信号是什么?

       大家在刚学STM32时,可能会对晶振的作用感到疑惑,晶振是做什么用的,为什么每个32芯片上都有这个东西。很多32的教学都没有对晶振这个东西做过多的描述。这样导致很多初学者都只知道有这个东西,这个很重要,它为什么这么重要就不知道了。

    晶振:

      晶振主要是用来产生时钟信号,单片机通过对晶振施加正负极电压来使晶振产生形变,从而产生电信号。这个电信号即是时钟信号。而晶振上写的8MHZ之类的字,它的意思是这个晶振一秒钟可以产生8M个时钟信号。示意图如下:

    时钟周期和时钟信号:    

      既然晶振的作用是产生时钟信号,而晶振对32来说至关重要,所以可以知道时钟信号对32来说至关重要。

       时钟信号用于驱动单片机执行功能,像取址,读存储器之类的操作,单片机只有在有时钟信号的情况下才会去执行。

       时钟周期是指一个时钟信号所持续的时间,时钟周期的长度会影响cpu的运行速度。cpu在执行代码时会执行取址,读存储器,执行,写存储器一系列操作。这一系列操作总共持续的时间被称为一个指令周期。一个指令周期的时间不是固定的,但它时钟周期的个数是固定的。因为cpu执行各个操作所需要的时钟周期个数是固定的,所以一个指令周期所需要的时钟周期个数是固定的。

       时钟周期越短,则cpu执行命令所需要的时间就越短,即cpu的运行速度就越高。时钟周期的长度由产生时钟信号的频率来决定。例:如果以晶振为系统时钟源,晶振的频率为8MHZ,其一秒钟能产生8M个时钟信号,此时时钟周期为1s/8M,即1/8 us。

   

总的来说晶振的作用是产生时钟信号,时钟信号的作用是驱动单片机执行功能,时钟周期影响CPU的运行速度。时钟周期越长运行速度越慢,越短则越快。

;