请教一下,在使用cc2640的ADC采样的时候,用到了sensor controller。sensor controller端建立了一个任务,初始化任务然后运行:
scifOsalInit();
scifOsalRegisterCtrlReadyCallback(scCtrlReadyCallback);
scifOsalRegisterTaskAlertCallback(scTaskAlertCallback);
scifInit(&scifDriverSetup);
scifStartRtcTicksNow(0x00010000);
//start the Sensor Controller's task (not to be confused with OS tasks)
scifStartTasksNbl(BV(SCIF_NEW_TASK_TASK_ID));
现在我需要收到一条指令后,停止该任务,所以我进行了如下操作:
while (scifWaitOnNbl(0) != SCIF_SUCCESS);
//stop the sensor controller's task
scifStopTasksNbl(BV(SCIF_NEW_TASK_TASK_ID));
scifStopRtcTicks();
scifUninit();
但是当我想再次启动该任务的时候,同样的初始化方法,却不能收到sensor controller端任务发送的通知。
请问这是怎么回事呢?
Viki Shi:
初始化函数放在哪边?请在全局初始化的时候进行任务初始化