單片機定時器是工程師在進行電路設計和產品研發過程中,常常用到的重要電子配件之一,其本身所具備的精確計時特性能夠幫助工程師快速完成設計工作。而對于剛剛開始接觸單片機的新人們來說,需要掌握的不僅是單片機定時器的指令設計,還有一些基礎概念也同樣是需要牢固掌握的。 時鐘周期 時鐘周期是單片機定時器在設計應用過程中比較常見的基礎概念之一,有時候也會被工程師們稱為振蕩周期,其含義指的是時鐘脈沖的倒數。對于新人工程師們來說,我們可以這樣來理解:時鐘周期就是單片機外接晶振的倒數。例如12M的晶振,它的時間周期就是1/12us。這樣理解就簡單很多了。 在單位換算方面,時鐘周期是整個計算機系統中最基本的、最小的時間單位了。在一個時鐘周期內,計算機的CPU僅僅能夠完成一個最基本的動作。對于某種單片機來說,如果所采用的是1MHZ的時鐘頻率,則時鐘周期為1us。若采用4MHZ的時鐘頻率,則時鐘周期為250ns。由于時鐘脈沖是計算機的基本工作脈沖,它控制著計算機的工作節奏。 顯然,對同一種機型的計算機,時鐘頻率越高,計算機的工作速度就越快。但是,由于不同的計算機硬件電路和器件的不完全相同,所以其所需要的時鐘周頻率范圍也不一定相同。8051單片機的時鐘范圍是1.2MHz-12MHz,在8051單片機中把一個時鐘周期定義為一個節拍,節拍的單位用字母P來表示,二個節拍定義為一個狀態周期,狀態周期的單位用字母S來表示。 機器周期 提起機器周期,可能很多剛剛開始學習單片機的同學都不太了解其具體含義,如果我們換一種說法來理解,即這是一個基本操作所需要的時間,是不是就好理解一些了呢? 在單片機定時器的操作過程中,為了便于管理,常把一條指令的執行過程劃分為若干個階段,每一階段完成一項工作。例如,取指令、存儲器讀、存儲器寫等,這每一項工作稱為一個基本操作。完成一個基本操作所需要的時間稱為機器周期。 通常情況下,在51單片機的運行過程中,一個機器周期一般是由若干個狀態周期組成。8051系列單片機的一個機器周期同6個狀態周期組成。前面已說過一個時鐘周期定義為一個節拍,二個節拍定義為一個狀態周期,8051單片機的機器周期由6個狀態周期組成,也就是說一個機器周期=6個狀態周期=12個時鐘周期。 指令周期 最后一個要為大家科普的,是單片機定時器的指令周期。這個定義相比較上面的兩個周期定義要簡單一些,顧名思義,該定義指的是執行一條指令所需要的時間,通常一個指令周期會由若干個機器周期組成。指令不同,所需的機器周期數也不同。 對于一些簡單的的單字節指令,在取指令周期中,指令取出到指令寄存器后,立即譯碼執行,不再需要其它的機器周期。對于一些比較復雜的指令,例如轉移指令、乘法指令,則需要兩個或者兩個以上的機器周期。通常含一個機器周期的指令稱為單周期指令,包含兩個機器周期的指令稱為雙周期指令。
|