⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 +-

📁 ucos 51 tcp/ip开发文档
💻
字号:
问题越来越多

关于uC/OS-II
    1。uC/OS-II源码里有的地方好象漏掉了编译预处理,导致裁减失效。是作者故意这样做的吗?还是有技巧?
    2。推荐的中断处理流程:
void OSTickISR(void)
{
    保存处理器寄存器的值;
    调用OSIntEnter()或是将OSIntNesting加1;
    调用OSTimeTick();

    调用OSIntExit();
    恢复处理器寄存器的值;
    执行中断返回指令;
}
    似乎有问题。我认为“OSIntEnter()或OSIntNesting+1”应该放到第1句,否则中断嵌套发生后,不知道前面已经中断过,在中断退出处理时就可能提前任务切换,导致混乱。我建议进入中断后立即关中断执行OSIntNesting+1或如果CPU支持OSIntNesting+1原语直接加1。
    
关于uCOS51
    1。51支持4个寄存器区(R0-R7),在C里也可以调用USING选择,你只保存1个寄存器区,是有问题的。
    2。通过使用bank技术,51可以支持2M的存储,对于使用字库等的应用很有价值,uCOS51如何实现?
    3。任务参数传递问题的解决使用了R1-R3,据我所知,不使用堆栈传值,无法重入,如果我想递归调用,如何实现?51仿真堆栈的格式是如何安排的?
    
    问题越来越多,目前发现这些,有些解决了,有些正在想,请继续查错,也请帮忙指点和改正。
    
    在其他MCU上移植,请注意:
        1。任务实现了重入了吗?
        2。任务参数传递是否真正用堆栈实现。
        3。中断处理流程有无BUG。
        4。原作者给的源码是否完整,有无经过技术处理。

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -