Degbug软件调试

2019-08-12 17:35发布

我的程序调试时,进到for里怎么出不来了?我想知道如何在调试时,跳出for循环
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
liuliupiaoxue
1楼-- · 2019-08-12 22:16
totalpoint这个值估计很大,跳不出这个函数void LCD_Clear(u16 color),应是程序有问题。可以 for(index=0;index<totalpoint;index++) 改index<某数,如100;再不行,加break;
王建峰
2楼-- · 2019-08-13 02:25
不要单步执行。设置断点
a0101
3楼-- · 2019-08-13 02:59
 精彩回答 2  元偷偷看……
王建峰
4楼-- · 2019-08-13 03:39
a0101 发表于 2017-10-23 16:28
老哥,断点没用啊,而且点执行过去,执行出去,和执行到光标处都没出去。

你把程序贴出来瞅瞅
a0101
5楼-- · 2019-08-13 04:07
王建峰 发表于 2017-10-23 16:30
你把程序贴出来瞅瞅

老哥,你看看这样贴的代码行吗,以前没贴过,这是一次。
void LCD_Clear(u16 color)
{
        u32 index=0;      
        u32 totalpoint=lcddev.width;
        totalpoint*=lcddev.height;                         //得到总点数
        if((lcddev.id==0X6804)&&(lcddev.dir==1))//6804横屏的时候特殊处理  
        {                                                    
                lcddev.dir=0;         
                lcddev.setxcmd=0X2A;
                lcddev.setycmd=0X2B;                                  
                LCD_SetCursor(0x00,0x0000);                //设置光标位置  
                lcddev.dir=1;         
                  lcddev.setxcmd=0X2B;
                lcddev.setycmd=0X2A;           
        }else LCD_SetCursor(0x00,0x0000);        //设置光标位置
        LCD_WriteRAM_Prepare();                     //开始写入GRAM                   
        for(index=0;index<totalpoint;index++)
        {
                LCD->LCD_RAM=color;       
        }
}  
David753
6楼-- · 2019-08-13 07:02
你断点设置在这一行               LCD->LCD_RAM=color;   
然后查看一下你的totalpoint这个变量的值,观察一下index的变化,就知道为啥出不去了。

一周热门 更多>