新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > Keil C51程序調(diào)試過程

Keil C51程序調(diào)試過程

作者: 時間:2016-11-17 來源:網(wǎng)絡 收藏
用MCS-51單片機軟件Keil C51編寫程序時,經(jīng)常需要調(diào)試,如果不是經(jīng)常用這個軟件的話,很容易忘記這些調(diào)試步驟,現(xiàn)在舉一個例子“驗證延遲函數(shù)delay()使其延遲的時間為500ms”供以后復習查考。

源程序寫完后,就可以調(diào)試了,按照圖1所示,先進行第一步和第二步操作,使界面切換到圖2的狀態(tài),可以看到在文本編輯窗口中,有一個黃色箭頭指向13行的位置,說明程序從這個位置開始執(zhí)行。左上角有一些跟調(diào)試相關的按鈕,如“全速執(zhí)行”、“單步進入”~~~對于我這個例子,目的是驗證delay()函數(shù)的延遲時間,使其大約為500ms。按照下列方法可以達到我的目的:

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

圖1 編譯界面

圖2 調(diào)試界面

點擊“單步跳出”按鈕(或功能鍵F10),黃色箭頭從第13行往下移一行(14),再單擊“單步跳出”,則箭頭移到15行那邊,表示程序從第13行執(zhí)行到第15行,(注:這種方式是一步一步執(zhí)行程序,如果要同時執(zhí)行幾行,如從第13行一下子到15行,可以這樣來做,用鼠標在第15行的位置處點擊兩下會出現(xiàn)一個圖2所示的紅色圖標,此時點擊“全速執(zhí)行”按鈕,則黃色的箭頭則會從第13行快速移到15行,這兩行同時執(zhí)行)此時左邊寄存器窗口中的sec有一個數(shù)值,表示程序執(zhí)行的時間(即delay()延遲時間),可能不是為500ms。此時,改變delay()函數(shù)中x,y的數(shù)值,然后點擊圖1的第二步所對應的按鈕切換到圖1所示的編譯界面上來,點擊“重新構造所有對象文件”編譯一下程序,然后再切換到圖2的界面上來進行調(diào)試。重復上面的步驟,直到左邊寄存器窗口中的sec(單位秒)數(shù)值大約為0.50s,即可說明delay()延遲時間為500ms。(注:這種方法比較麻煩,而且延遲時間不會很精確,如果要精確延遲的話可采用定時器的方式)



評論


技術專區(qū)

關閉