0
我正在使用一個for循環,它將從0增加到30000,以便在led開/關狀態之間進行一些延遲。如何找到for循環的確切延遲。該代碼用於具有11.0592 MHZ振盪器頻率的微控制器AT89C51ED2。我也嘗試過一些程序員偏好的延遲函數。但我看不到LED閃爍。如何計算在keil c中執行指令所花費的時間c
我正在使用一個for循環,它將從0增加到30000,以便在led開/關狀態之間進行一些延遲。如何找到for循環的確切延遲。該代碼用於具有11.0592 MHZ振盪器頻率的微控制器AT89C51ED2。我也嘗試過一些程序員偏好的延遲函數。但我看不到LED閃爍。如何計算在keil c中執行指令所花費的時間c
要麼你去,你使用Dissassembly
窗口來查看您的循環指令,並計算週期數爲每個指令爲你的3000
次循環或...
..go調試,開放Registers
窗口有States
參數,它告訴你代碼中特定步驟需要多少個週期。
調試時,移動到循環開始,保存狀態,然後轉到循環後再次檢查。減去值並且你有多個狀態。
你的代碼是否可以執行? LED是亮起,熄滅還是半亮?當您確定LED的範圍時會發生什麼?你的調試器是否顯示循環正在執行?你必須調試 - 我們根本無法提供你所告訴我們的,或者根本不可能有硬件問題:( – ThingyWotsit
是的,它已經成功編譯並且.hex文件也被創建了。我選擇了P1.0的LED閃爍在調試模式下,我可以看到P1.0使用外設 - > I/O端口 - >端口1閃爍。但在硬件中不是。 – userrp1519825