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.

[参考译文] CC2564:与 uCOS-II 初始化时的 Bluetopia 移植问题

Guru**** 2595800 points


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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/603224/cc2564-bluetopia-porting-issues-when-at-intialization-with-ucos-ii

器件型号:CC2564

大家好、我目前正在使用蓝牙器件并将蓝光堆栈从 FreeRTOS 移植到 uCOS-II

我使用 STM32 (Cortex M4)系列评估板使 SPPdemo 随 FreeRTOS 一起运行。

现在、当我为相同的评估板的 uCOS-II 修改了 BTPSKRNL.c 和 HCITRNS.c 文件时、我一直尝试使其运行、但我在 尝试初始化时返回-4 (堆栈初始化失败:-4)。

经过一些调试后、我发现它确实创建了3个任务、但最终它调用 HCITR_COMClose ()、并且无法成功继续 Opensting()。  

有人能不能有任何提示来说明调用 HCITR_COMClose ()的原因? 或者解释它可能等待的事件的顺序? 我一直在尝试查看它是否与 ISR 相关、或者与可能错误地连接到蓝牙 API 的其他操作系统功能相关、但我不确定。

谢谢

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

    Everardo、

    哪个 API 会返回-4错误? 它是 BSC_Initialize()吗?

    错误代码-4是指 BTPS_ERROR_HCI_INITIALIZING_ERROR (在 BTErrors.h 中定义)。 此错误表示堆栈无法打开 HCI UART 端口。

    这可能有各种不同的原因。 您是否肯定 BTPSKRNL.c 和 HCITRNS.c 中的修改正确完成?

    此致、
    Vihang

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好,是的,API 是 BSC_Initialize(),因为我注意到它与 HCI UART 端口相关。
    对 btpskrnl 和 hcitrans 的修改让我觉得他们还可以,但这是我怀疑可能会出什么问题的地方。
    我知道它确实会创建线程、创建互斥量、创建事件、创建邮箱和延迟。 但是、由于我无法使其运行、我无法说我100%肯定这些 API 正由 Bluetopia 栈按预期进行处理
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    几周前、我发现我的问题、在"事件"处理中、我的 BTPSKRNL.c 中存在一个错误(需要是一对多)。 谢谢