This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] RTOS/CC2650:多任务不连续运行。

Guru**** 2587365 points
Other Parts Discussed in Thread: CC2650

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/585815/rtos-cc2650-multitasking-not-running-continously

器件型号:CC2650

工具/软件:TI-RTOS

您好!

我将 SPP 与 CC2650 Launchpad 搭配使用。

I 应用程序是 SPP 服务器、它的作用与观测器和外设类似。 它最初是观测器、然后应该是外设。

因此、我们将 peripheral.c 和 central .c 都添加到了我们的项目中、并将 SPP_ble_server.c 和 simple_observer.c 添加到了我们的项目中。

main.c 中指定的优先级 如下

/*初始化 iCall 模块*/
iCall_init();

//开始外部映像的任务-优先级5 */
iCall_createRemoteTask();

GAPRole_createTask();//优先级4
GAPObserverRole_createTask();// 3.

SPPBLESERVER_CREATateTask ();// 2
SimpleBLEObserver _ createTask ();// 1
//*启用中断并启动 SYS/BIOS */
BIOS_start (); 

我在 CCS 应用程序和堆栈项目中更改此处  http://processors.wiki.ti.com/index.php/Adding_Custom_RTOS_Task 定义的预定义符号

现在、在运行项目时、SPP_ble_server 任务仅运行一次。

SPP_BLE_SERVER 任务不会持续运行、而 simple_observerTask 则持续运行。  

未发生任务切换。 它仅充当观测器角色。 之后它不会进入外设。

我应该怎么做才能使它持续运行?

同样、我们正在运行中央+广播设备角色、而 SPP 也会出现同样的问题

谢谢、

Santhanarayanan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Santhanarayanan、

    我建议您查看我们的多角色示例、并将其用作如何切换角色的基础。 您可以在 TI BLE Github 页面 上找到多角色示例的版本:github.com/.../ble_examples
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Santhanarayanan、

    您可以使用 multi_role 在外设和中央设备之间进行切换、因为它既可用作中央设备、也可用作外设。
    即使是 multi_role 也能通过在任务之间正确切换来正确地支持多任务处理。

    此致、
    Abhishek Yakkundi

    如果您的问题得到了解答、请按下面的验证答案。