![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
学习uC/OS-II时的三个疑惑 20
1、若OSRdyGrp为零,则说明在就绪表中没有已就绪的任务,而根据y=OSUnMapTbl[OSRdyGrp];OSPrioHighRdy=(INT8U)((y<<3)...
1、若OSRdyGrp为零,则说明在就绪表中没有已就绪的任务,而根据y=OSUnMapTbl[OSRdyGrp]; OSPrioHighRdy=(INT8U)((y<<3)+OSUnMapTbl[OSRdyTbl[y]]);可以得到OSPrioHighRdy为零,即在就绪表中找到了优先级为零的已就绪的任务。这一点不知该如何理解。
2、如何实现使OSTaskStat()这个任务每1秒钟执行一次的?
3、在OSTaskCreate()和OSTaskCreateExt()中由于存在prio>OS_LOWEST_PRIO这个判断,所以在应用程序中不能建立优先级为OS_LOWEST_PRIO的任务(这是作者写到的)。但是,在系统初始化函数OSInit()中却调用了它们建立了优先级为OS_LOWEST_PRIO的空闲任务。这一点不知该如何理解。 展开
2、如何实现使OSTaskStat()这个任务每1秒钟执行一次的?
3、在OSTaskCreate()和OSTaskCreateExt()中由于存在prio>OS_LOWEST_PRIO这个判断,所以在应用程序中不能建立优先级为OS_LOWEST_PRIO的任务(这是作者写到的)。但是,在系统初始化函数OSInit()中却调用了它们建立了优先级为OS_LOWEST_PRIO的空闲任务。这一点不知该如何理解。 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询