主题 : 初级问题,程序运行出错,可不知道为什么? 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 33032
精华: 0
发帖: 4
金钱: 20 两
威望: 4 点
综合积分: 8 分
注册时间: 2010-11-24
最后登录: 2011-03-02
楼主  发表于: 2010-11-24 20:37

 初级问题,程序运行出错,可不知道为什么?

我在AXD中进入Main后运行如下的程序代码
void Main(void)
{    
    
    int i;
    int j;
    ChangeMPllValue(110,3,1);
    
    Uart_Init(PCLK, 115200);
    Uart_Select(1);
    Uart_TxEmpty(1);

   Uart_Printf("\n\rEx01. Test I/O Ports \n\r\n\r");
    Delay(100);
    Port_Init();
    
    while(1)
    {
        for(i=1;i<=4;i++)
        {
            Uart_SendString(".");
             Led_Display(i);
            Delay(10000);

        }
            
    }

} // end of main(...)

这段代码运行没有问题,可是如果在Dealy(10000)后增加两行代码
j++;
j++;
这两行代码无法运行不到啊,单步执行时在Delay(10000)后又重新返回了for循环了,这是为什么呢?
级别: 新手上路
UID: 33032
精华: 0
发帖: 4
金钱: 20 两
威望: 4 点
综合积分: 8 分
注册时间: 2010-11-24
最后登录: 2011-03-02
1楼  发表于: 2010-11-24 21:34
已解决,是被编译器给优化了。