Thread 中讨论的其他器件:CC2650
工具/软件:TI-RTOS
我使用"simple_peripheral_cc2650"作为启动平台。 Abe 创建新任务并按如下方式运行 OK:
静态空 sensorTaskFxn (UARg a0、UARg A1)
{
// iCall_registerApp (&selectyMain、&sensorSemaphore);
while (真)
{
电池状态= PIN_getInputValue (Board_GPI_nCHRG);
DELAY_MS (SENSOR_SLEEP_PERIOD);//任务运行周期
}
}
但现在我想在超时之前唤醒任务,决定使用 iCall_Wait ()方法。
一旦我更改为跟随、代码跳转至" loader_exit"
静态 iCall_Semaphore sensorSemaphore;
静态 iCall_EntityID self EntityMain;
静态空 sensorTaskFxn (UARg a0、UARg A1)
{
iCall_registerApp (&selectyMain、&sensorSemaphore);
while (真)
{
电池状态= PIN_getInputValue (Board_GPI_nCHRG);
iCall_Wait (sensor_sleep_period);
}
}
静态空 LOADER_EXIT (空)
{
#if 已定义(embed_CIO_BP)
_asm (".global C$$EXITE");
#if defined (__32bis__)
_asm ("C$EXITE:.word 0xDEFED0FE");
其他
_asm (".align 4");
#if defined (__big_endian__)
_asm ("C$EXITE:.half 0xDEFE");
其他
_asm ("C$EXITE:.half 0xD0FE");
#endif /*__big_endian__*/
#endif /*__32bis_*/
#else /*!embed_CIO_BP */
_asm (".global C$$$exit");
_asm ("C$$EXIT:NOP");
#endif
}
感谢您的建议