TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2640 simplebleperipheral的疑问

CC2640协议栈是基于TI-RTOS基础上实现的,中间还加了个ICall,代码中间还加了n层宏定义,好像故意绕来绕去,又没有详细的注释,让人学习的难度加大,真的是无fu-ck可说了。

现在有几大疑问想请教一下TI工程师:

1、关于每个thread里的ICall_Errno errno = ICall_wait(ICALL_TIMEOUT_FOREVER);我知道发送信号量和队列消息,它都能接收到,然后执行后面的程序,但是后面代码里的

if (ICall_fetchServiceMsg(&src, &dest,(void **)&pMsg) == ICALL_ERRNO_SUCCESS)

作用是什么呢,什么时候会判断为true?自己创建的thread,是否也一定需要这个语句?

2、我自己创建了一个新thread,在手机连接上蓝牙以后,在这个thread里,定时1秒调用一次notify函数,把数据发送给手机。但是一调用,程序必定死掉。但是,在SimpleBLEPeripheral_taskFxn里面调用,程序就一切正常,请问这个问题,是否跟SimpleBLEPeripheral_init里面调用的GAP_RegisterForMsgs(selfEntity);      GATT_RegisterForMsgs(selfEntity);有关系呢?

谢谢!

hao wu10:

你好有解决吗~!我也遇到同样问题。

赞(0)
未经允许不得转载:TI中文支持网 » CC2640 simplebleperipheral的疑问
分享到: 更多 (0)