前言
已经写了5篇了,最大的感触还是啃源码太累了,以及很多无用无脑的话太多了。想想自己也不至于一些过于无脑的东西都需要看笔记才能理解。而且现在主要任务还是学会用ucos,所以在以后的笔记里还是先写系统的使用方法以及一些必要性的可能会忘的知识。至于源码解析,其实大部分还是能看懂八九分,在以后有时间会挑一些比较有意思有意义的源码看。另外就是有些篇幅过于冗长,但是毕竟前5章是打基础,所以写的还是比较仔细。以后的内容很多是为了回顾忘掉的东西,所以每一个知识点会进行碎片化来写。方便以后查阅。
1 建立任务
建立任务有两个函数。之前说过的,一个是OSTaskCreate(),一个是OSTaskCreateExt()。
INT8U OSTaskCreate (void (*task)(void *pd), //任务函数指针
void *pdata, //任务传入的参数
OS_STK *ptos //指向任务堆栈栈顶的指针
INT8U prio) //任务优先级
以上为OSTaskCreate函数需要传入的参数。具体含义已经标明。比较重要的是第三个参数,任务堆栈指针。以下做详细介绍。
INT8U OSTaskCreateExt (void (*task)(void *pd),
void *pdata,
OS_STK *ptos,
INT8U prio,
INT16U id, //一个特殊的标识符,在uC/OS-II里还没用处
OS_STK *pbos,