新聞中心

51單片機中的周期

作者: 時間:2016-11-29 來源:網(wǎng)絡(luò) 收藏
首先明確幾個概念:時鐘周期、振蕩周期、狀態(tài)周期、機器周期、指令周期

1、時鐘周期,也稱為振蕩周期:定義為時鐘脈沖的倒數(shù),在單片機中也就等于晶振的倒數(shù)。

本文引用地址:http://butianyuan.cn/article/201611/323488.htm

51單片機中把一個時鐘周期定義為一個節(jié)拍(用P表示),2個節(jié)拍定義為狀態(tài)周期(用S表示)

時鐘周期是單片機中最小的時間單位。

eg:12M晶振的單片機,時鐘周期=振蕩周期=1/12 us。

2、機器周期:定義為完成一項基本操作所需要的時間,稱為機器周期。

在計算機中,為了方便管理,把一條指令的執(zhí)行過程分為若干個階段,每個階段去執(zhí)行一項基本操作。

如:取指令,存儲器讀,存儲器寫等。

在51單片機中1個機器周期由6個狀態(tài)周期組成,也就是12個時鐘周期=12 x 1/12 us =1 us

定義機器周期是因為時鐘周期時間太短,根本做不了什么。

3、指令周期:定義為執(zhí)行一條指令所需的時間。

通常,包含一個機器周期的指令稱為單周期指令,比如 MOV指令,CLR指令等。

包含兩個機器周期的指令稱為雙周期指令。

另外還有四周期指令。

判斷指令是單周期指令還是雙周期指令,最可靠的是查指令表。我在網(wǎng)上找到了一個規(guī)律總結(jié),

此規(guī)律應(yīng)按照順序進行判斷,前一條原則高于后一條(主要指2~6),按順序檢查到哪一條滿足,就歸屬哪

一類:

1、MUL、DIV:僅有的4周期指令
2、包含DPTR和PC的指令均為2周期指令
3、所有的絕對跳轉(zhuǎn)和條件轉(zhuǎn)移指令,均為2周期指令
4、所有包括A寄存器的指令,均為單周期指令
5、位操作指令中,ANL和ORL是2周期指令
6、所有包含立即地址的指令,除INC direct及DEC direct外,均為2周期指令
7、剩下的均為單周期指令。

現(xiàn)在,常用的單片機程序編寫軟件為keil,當(dāng)寫好程序后,我們可以通過軟件調(diào)試來確定程序執(zhí)行所需的時間,同時也能看到每條指令:



關(guān)鍵詞: 51單片機周

評論


技術(shù)專區(qū)

關(guān)閉