前言
上一篇文章介紹了keil軟件調(diào)試(Debug)仿真教程(軟件調(diào)試和硬件調(diào)試的區(qū)別)及常用調(diào)試按鍵詳解,本篇文章主要學(xué)習(xí)的是軟件調(diào)試?yán)锩?,如何設(shè)置單片機(jī)晶振(用來(lái)確定單片機(jī)工作頻率),如何查看單片機(jī)IO口引腳(用來(lái)觀察IO口當(dāng)前高低電平)如何查看單條語(yǔ)句運(yùn)行時(shí)間(基于軟件調(diào)試),建議大家收藏觀看。
一、晶振是什么?
有一些電子設(shè)備需要頻率高度穩(wěn)定的交流信號(hào),而LC振蕩器穩(wěn)定性較差,頻率容易漂移(即產(chǎn)生的交流信號(hào)頻率容易變化)。在振蕩器中采用一個(gè)特殊的元件——石英晶體,可以產(chǎn)生高度穩(wěn)定的信號(hào),這種采用石英晶體的振蕩器稱為晶體振蕩器。
晶振好比單片機(jī)的心臟,如果沒(méi)有心臟起跳,單片機(jī)無(wú)法工作,晶振值越大,單片機(jī)運(yùn)行速度越快,有時(shí)并不是速度越快越好,對(duì)于電子電路而言,速度夠用就是最好,速度越快越容易受干擾,可靠性越差!
而單片機(jī)在運(yùn)行的時(shí)候,需要一個(gè)脈沖信號(hào),做為自己執(zhí)行指令的觸發(fā)信號(hào),可以簡(jiǎn)單的想象為:?jiǎn)纹瑱C(jī)收到一個(gè)脈沖,就執(zhí)行一次或多次指令。
二、如何用軟件調(diào)試查看語(yǔ)句運(yùn)行時(shí)間!
1.設(shè)置晶振
Keil 編輯界面,打開(kāi)工程設(shè)置對(duì)話框,在【 Target 】標(biāo)簽下的【 Xtal ( MHz ):】后面將原來(lái)的默認(rèn)值修改為單片機(jī)上晶振頻率值11.0592MHz。
2.打開(kāi)軟件仿真
單擊窗口上的調(diào)試按鈕快捷圖標(biāo)(上圖紅色框內(nèi)圖標(biāo)),進(jìn)入到軟件模擬調(diào)試模式。
3.打開(kāi)硬件IO口模擬器
我們先來(lái)看如何在單步執(zhí)行代碼時(shí),查看硬件 IO 口電平變化和變量值的變化。先將硬件IO口模擬器打開(kāi)。
顯示的是軟件模擬出的單片機(jī)P1口8位口線的狀態(tài),單片機(jī)上電后 I / O 口全為1,即十六進(jìn)制的0xFF。
代碼如下(示例):
#include <reg51.h>
#include <intrins.h>
unsigned char a,b,k,j;
sbit beep=P2^3;
void delay10ms()
{
for(a=100;a>0;a--)
for(b=225;b>0;b--);
}
void main()
{
k=0xfe;
while(1)
{
delay10ms();
//beep=0;
delay10ms();
//beep=1;
j=_crol_(k,1);
k=j;
P1=j;
}
}
該程序使用于P1口流水燈閃爍。
4.sec查看單句運(yùn)行時(shí)間!
左側(cè)的寄存器窗口中可以到一些寄存器名稱及它們的值,本小節(jié)的核心部分" sec ”,它后面顯示的數(shù)據(jù)就是程序代碼執(zhí)行所用的時(shí)間,單位是秒。
通過(guò)添加斷點(diǎn),單步執(zhí)行就可以得到我們想要的時(shí)間數(shù)據(jù)。
5.添加斷點(diǎn)
我們?cè)谘訒r(shí)函數(shù)處,添加斷點(diǎn),然后運(yùn)行,會(huì)看到延時(shí)時(shí)間。
我們選擇跳過(guò)函數(shù),會(huì)看到時(shí)間。
延時(shí)10毫秒,時(shí)間還是差不多的。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-493333.html
總結(jié)
以上就是今天要講的內(nèi)容,本文僅僅簡(jiǎn)單介紹了keil軟件調(diào)試的使用,而keil提供了大量供我們查看的寄存器,變量,仿真設(shè)置,大家多多使用。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-493333.html
到了這里,關(guān)于keil軟件調(diào)試查看語(yǔ)句運(yùn)行時(shí)間,單片機(jī)IO口狀態(tài),變量窗口設(shè)置,晶振設(shè)置。的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!