huanghaiming 发表于 2010-5-19 04:58:17

ucosII程序出问题

我的系统下载后发现不断的初始化,没有进入任务,是什么问题?
void main(void)
{

////////////////////////////////////////////////////////////////////////////
    //端口初始化
        DDRC=0xff;
        PORTC=0xff;
        PORTC |= (1<<6)|(1<<5);
        DDRA=0xff;
        PORTA=0xff;
        DDRD=0xff;
        PORTD=0x00;
        LCMInit(); //LCM初始化   //液晶初始化
                        DisplayList(0x80,text_1);   //显示第一行
          DisplayList(0x90,text_2);   //显示第二行
          DisplayList(0x88,text_3);   //显示第三行
          DisplayList(0x98,text_4);   //显示第四行
          s_ms(60000);
          s_ms(60000);
                s_ms(60000);
                s_ms(60000);
                s_ms(60000);
                s_ms(60000);
                s_ms(60000);
                s_ms(60000);
                //while(1);
////////////////////////////////////////////////////////////////////////////          
    OSTaskStkSize   = OS_TASK_STK_SIZE;      
    OSTaskHardStkSize = OS_TASK_HARD_STK_SIZE;   
    OSInit();        
    OSTaskStkSize   = OS_TASK_MAIN_STK_SIZE;      
    OSTaskHardStkSize = OS_TASK_MAIN_HARD_STK_SIZE;
    OSTaskCreate(MainTask, (void*)0, (OS_STK*)&TaskMainStk, 0);
        OSStart();
}
也就是不断地显示那四行文字.高手指点

june4th 发表于 2010-5-19 06:33:37

看门狗叫了?

huanghaiming 发表于 2010-5-19 14:19:38

我这里有使能看门狗吗?

ralfak 发表于 2010-5-24 15:48:41

可怜娃
debug时有一个功能叫单步跟踪,
你进入osstart函数看看
看看到底有没有跳到MainTask中
注意查看MainTask地址,即flash的地址和从堆栈中弹出的地址是否一致

ralfak 发表于 2010-5-24 15:54:14

还有,你是不是犯了一个同样的错误
任务必须是死循环
不能让它返回的
返回谁也不知道跑到哪儿去了

simplorer 发表于 2010-5-28 10:54:51

连个循环都没有,天知道跳到哪去了
页: [1]
查看完整版本: ucosII程序出问题