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