在单步连续调试时,需要依次执行程序代码中的每个语句,并观察每个语句的结果和变量值。在IDE的调试工具条中通常有常用的调试按钮,包括:
1. 单步(Step Over):执行当前语句并进入下一条语句,不进入当前语句调用的函数。
2. 单步进入(Step Into):执行当前语句并进入下一条语句,如果当前语句是函数调用,则进入该函数内部调试。
3. 单步跳出(Step Out):将执行指针移到当前函数的返回语句,退出当前函数并返回原调用代码位置。
4. 继续(F5):执行重启调试并从当前位置继续执行代码,直到遇到断点或程序结束。
这些调试按钮可根据需要层层按下,以实现对程序单步连续调试和错误调试。
#include#define uint unsigned int
sbit LED = P1^0
sbit KEY1 = P1^2
void delay(uint)
void main(void)
{
LED = 1 //初始化LED熄灭
KEY1 = 1 //赋值KEY1高电平
while(1)
{
if(!KEY1) //检测到按键按下
{
LED = ~LED/*LED取反,此时LED = 0,灯亮。当松手时,KEY1 = 1,不满足if语句不
进入循环,LED继续保持当前状态即LED = 0,如果再次按下按键,此时检测到KEY1 = 0,进入循
环,LED取反得到LED = 0,灯亮。*/
delay(500) /*此处延迟,保证连续两次按键动作处在程序的延时过程中,不进行其他程序从而不会影响小灯。*/
}
}
}
void delay(uint z) //延时函数
{
uint x, y
for(x=85x>0x--)
for(y=zy>0y--)
}
可下载到单片机验证。
读取连接按键的IO口,判断是否为低电平,如果是,延时(十毫秒左右可以),再次读取IO口,判断是否为低电平,如果是则表示有有效的按键按下,接着用while判断等待按键释放,然后让连接led的IO口电平取反以控制其亮灭(是强电的灯可以通过此处控制继电器的合、闭来控制灯的亮灭)。参考程序:if(key==0){delayms(10)if(key==10){while(key==0)//等待按键释放,IO口恢复高电平led=!led//按键控制程序}}欢迎分享,转载请注明来源:内存溢出
评论列表(0条)