就是这个Peripheral_TaskID我看不明白如下
在这个函数中,我的理解是给你自己定义的任务分配一个id,用来表示优先级把,前边的老大哥都排好顺序了,现在开始给你自己的任务编个号,但是我不知道这个号具体有啥用,
然后
在这个函数中有好多这个id,但是这个id也不是函数传进来的id,很明显这是个全局变量,然后我想要找这个TaskID是在哪里改变他的值的,就是在死循环里边那个地方改变他的值,从而分别出来要执行哪个事件,后来我发现死循环函数TMOS_SystemProcess()打不开,然后我就想起来我之前用的Zigbee协议栈,感觉跟这个蓝牙协议栈一样相似,然后就去看了Zigbee协议栈
相对应的大概就是这个函数了,他是跟距任务id从零开始依次递加,然后判断这个任务有没有被置1,置1的话说明这个事件被触发了,需要处理这个事件了,
我们不妨直接移动到这个触发的事件里
发现他确实是根据id找的任务,而这个图中的SampleApp_ProcessEvent这个函数对应的也是蓝牙协议中的Peripheral_ProcessEvent函数,但是这个时候我就有个疑问,如果在Peripheral_ProcessEvent函数里边我们自己定义不止一个事件,每个事件都分配一个id,那么这个id的值肯定比上边这个图里边的taskArr数组里边定义的这些个数大,也就是说超出了这个数组的范围,
越说越乱了,反正我就是不懂Peripheral_TaskID
这个函数里边明明每个事件ID不同,他还要写ID,还有就是既然有每个事件定义的下边这个东西,为啥还要id,直接按顺序写那个初始化的函数不就行了,俺不理解
求大佬指点