標(biāo)題: 單片機定時基礎(chǔ)(來自網(wǎng)絡(luò)) [打印本頁]

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






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1