查看: 1525|回复: 0

不得不发帖求助了-关于51移植UCOSII的问题

[复制链接]
  • TA的每日心情
    开心
    2014-3-25 09:36
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2013-12-31 20:41:20 | 显示全部楼层 |阅读模式
    分享到:
     平台:STC12C5A60S2 外部晶振:12MHZ
    开发环境:KEIL V900
    UCOSII版本:V2.91
    照搬杨屹大侠的移植源代码
    针对我板子我做了如下修改:
    #define  OS_CRITICAL_METHOD   3u
     
    #if OS_CRITICAL_METHOD == 3u
            #define  OS_ENTER_CRITICAL()     {cpu_sr = IE&0x80;IE&=0x7F;} 
            #define  OS_EXIT_CRITICAL()        {IE |= cpu_sr;}
    #endif
     
     
    void InitTimer0(void) reentrant
    {
        TMOD=TMOD&0xF0;
        TMOD=TMOD|0x01;    //
        TH0=0xB1;    //
        TL0=0xE0;    // OS_TICKS_PER_SEC=50 即20MS溢出一次
        ET0=1;       //
        TR0=1;            
     
    }
     然后就是创建了一个闪灯任务
    void Task_LED(void *p_arg)reentrant
    {
           p_arg = p_arg;
     
           for(;;)
          {
               LeftFrontLight = 0;
               OSTimeDlyHMSM(0, 0,0,200);
               LeftFrontLight = 1;        
               OSTimeDlyHMSM(0, 0,0,200);
          }
     
    }
    可是程序运行时,看不到闪灯效果,仿真用模拟逻辑分析仪发现LeftFrontLight 定义的端口高低变化几次后就不变化了,然后程序就死在OS_TaskIdle()空闲任务中
     
    求求各位大侠帮帮忙

    51移植UCOSII.zip

    518.93 KB, 下载次数: 0

    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条



    手机版|小黑屋|与非网

    GMT+8, 2025-1-11 14:28 , Processed in 0.117273 second(s), 16 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.