51 Keil語句延遲時間的精確計算
我們首先要找到單片機的晶振為多大(一般在配套的使用說明書中有標(biāo)識或者直接在實驗板上面看,實驗板上面標(biāo)識的不是很明顯),如圖所示標(biāo)識。
本文引用地址:http://m.butianyuan.cn/article/201611/318606.htmKeil編譯器在編譯程序時,計算代碼執(zhí)行時間跟此數(shù)值有關(guān),我們要模擬時間就要使軟件模擬運行速度與實際硬件一一對應(yīng)。STC89C52RC的晶振頻率由圖1.知其頻率為11.0592MHz。故我們需要在keil的project中的Option for target 選項中修改晶振頻率值:
點擊OK按鈕,設(shè)置完畢。
二、計算語句執(zhí)行的時間
1)點擊
按鈕后可以看到兩個現(xiàn)象
l 在main函數(shù)內(nèi)的第一條帶操作性語句前有一個箭頭
這表示程序要運行的下一條語句。
l 程序運行箭頭所指向語句之前語句的時間為422.09us
2)點擊 使運行箭頭所指向的一條語句
點擊 按鈕過后,黃色箭頭的指向會朝向下一條,這個時候程序運行的時間就會發(fā)生變化:
相應(yīng)的箭頭指向的語句也會發(fā)生變化
且
其中21-22行為注釋語句。
所以我們就可以計算出執(zhí)行led1 = 0這條語句的時間為:(423.18-422.09)us。
三、總結(jié)
知道每條(段)程序運行的時間過后我們就可以設(shè)置一段我們想要的時間段去控制軟件間歇的運行某些程序段。如使流水燈閃爍。
評論