微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > Keil C51程序调试过程

Keil C51程序调试过程

时间:11-17 来源:互联网 点击:
用MCS-51单片机软件Keil C51编写程序时,经常需要调试,如果不是经常用这个软件的话,很容易忘记这些调试步骤,现在举一个例子“验证延迟函数delay()使其延迟的时间为500ms”供以后复习查考。

源程序写完后,就可以调试了,按照图1所示,先进行第一步和第二步操作,使界面切换到图2的状态,可以看到在文本编辑窗口中,有一个黄色箭头指向13行的位置,说明程序从这个位置开始执行。左上角有一些跟调试相关的按钮,如“全速执行”、“单步进入”~~~对于我这个例子,目的是验证delay()函数的延迟时间,使其大约为500ms。按照下列方法可以达到我的目的:

图1 编译界面

图2 调试界面

点击“单步跳出”按钮(或功能键F10),黄色箭头从第13行往下移一行(14),再单击“单步跳出”,则箭头移到15行那边,表示程序从第13行执行到第15行,(注:这种方式是一步一步执行程序,如果要同时执行几行,如从第13行一下子到15行,可以这样来做,用鼠标在第15行的位置处点击两下会出现一个图2所示的红色图标,此时点击“全速执行”按钮,则黄色的箭头则会从第13行快速移到15行,这两行同时执行)此时左边寄存器窗口中的sec有一个数值,表示程序执行的时间(即delay()延迟时间),可能不是为500ms。此时,改变delay()函数中x,y的数值,然后点击图1的第二步所对应的按钮切换到图1所示的编译界面上来,点击“重新构造所有对象文件”编译一下程序,然后再切换到图2的界面上来进行调试。重复上面的步骤,直到左边寄存器窗口中的sec(单位秒)数值大约为0.50s,即可说明delay()延迟时间为500ms。(注:这种方法比较麻烦,而且延迟时间不会很精确,如果要精确延迟的话可采用定时器的方式)

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top