打印
[ZLG-ARM]

请教:MagicARM移植ucosii2.76的问题

[复制链接]
1155|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhuyiguo|  楼主 | 2007-10-3 15:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在移植ucosii2.76时,编译都通过了,但用EasyJTAG下到片外RAM进行仿真,怎么一到任务的while(1)循环就跳到进入IRQ中断(在循环体上设置断点),而如果直接全速执行则会出现数据中止(DataAbort),这是为什么啊,我把其它的IRQ都关了,只留下了TIME0作为时钟中断.

相关帖子

沙发
zhuyiguo|  楼主 | 2007-10-3 16:06 | 只看该作者

任务的代码

void Task0(void *pdata)
{   const uint8  DISP_TAB[32] = { 0xFF,0x00,0xFF,0x00,0xFF,0x00,0xFF,0x00,
                                  0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,
                                  0x40,0x20,0x10,0x08,0x04,0x02,0x01,0x00, 
                                  0x55,0xAA,0x55,0xAA,0x55,0xAA,0x55,0x00 }; 
    uint8  i; 
   
    pdata = pdata;
    TargetInit ();    
    PINSEL0 = 0x00000000;        // 设置P0口管脚连接GPIO  
    IO0DIR = BEEP;                // 设置蜂鸣器控制口为输出
    IO0SET = BEEP;
    IO2DIR = LED_IOCON;         // 设置LED1--LED8的控制口为输出
    LED_OFF();
   
    // 建立任务1(用于蜂鸣器控制)
    //OSTaskCreate (Task1,(void *)0, &TaskStk1[TaskStkLengh - 1], 3);    
    
    while (1)
    {   for(i=0; i<32; i++)
        {   LED_DISP(DISP_TAB);          // 输出LED显示数据
            //OSTimeDly(OS_TICKS_PER_SEC/2);    // 延时0.5S,
            //如果用OSTimeDly就会出现上述情况??
            Delay(100);//自已写了一个延时就可以了!!,但不能实现任务切换了,这是为什么啊,
        }         
    }
}

任务切换的代码都是实验书上的,没改,应该不会有问题的,请哪高手回答一下啊

使用特权

评论回复
板凳
zhuyiguo|  楼主 | 2007-10-4 09:44 | 只看该作者

ok,解决了,可以运行了

ok,解决了,可以运行了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

3

帖子

0

粉丝