發布時間:2021-12-16
當單片機工作時,它從rom中一個接一個地取出指令,然后一步一步地執行。單片機一次訪問內存的時間稱為機器周期,是一個時間基準。—機器周期包括12個時鐘周期。如果單片機選擇12MHz晶振,其時鐘周期為1/12us,也是晶振周期。它的機器周期是12(1/12)us,也就是1us。
機器周期不僅對指令執行有重要意義,也是單片機定時器和計數器的時間基準。例如,如果單片機選擇12MHz晶體振蕩器,那么當定時器值增加1時,實際經過的時間是1us,這就是單片機的計時原理。
單片機晶體振蕩器的功能
單片機晶振的作用是為系統提供基本的時鐘信號。通常一個系統共用一個晶振,方便各部分保持同步。在一些通信系統中,不同的晶體振蕩器被用于基頻和射頻,并且頻率被電子調節以保持同步。
晶體振蕩器通常與鎖相環電路一起使用,以提供系統所需的時鐘頻率。如果不同的子系統需要不同頻率的時鐘信號,它們可以由連接到同一晶體振蕩器的不同鎖相環提供。
在正常工作條件下,普通晶振頻率的絕對精度可達百萬分之五十。高級精度更高。一些晶體振蕩器也可以通過一定范圍內的外部電壓來調節頻率,這被稱為壓控振蕩器。晶體振蕩器是利用一種能將電能和機械能相互轉換的晶體,在諧振狀態下工作,提供穩定準確的單頻振蕩。
指令周期
指令周期是執行一條指令所需的時間,一般由幾個機器周期組成。不同的指令需要不同的機器周期數。
對于一些簡單的單字節指令,在取指令周期中,指令被取入指令寄存器后立即被解碼和執行,不需要其他機器周期。對于一些復雜的指令,如分支指令、乘法指令,需要兩個或更多的機器周期。通常,一個機器周期的指令稱為單周期指令,兩個機器周期的指令稱為雙周期指令。
簡單來說,沒有晶振就沒有時鐘周期,沒有時鐘周期就無法執行程序代碼,單片機就無法工作。