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.

[参考译文] CCS/CC2650:ROV BIOS 扫描错误

Guru**** 2471690 points
Other Parts Discussed in Thread: CC2650STK, BLE-STACK

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/662496/ccs-cc2650-rov-bios-scan-for-errors

器件型号:CC2650
Thread 中讨论的其他器件: BLE-STACK

工具/软件:Code Composer Studio

我在 CC2650STK sensortag 上安装简单外设应用程序、带(h)调试器 DevPack。

我在 sensortag 上构建并安装堆栈和应用程序(调试)

在启动应用程序之前,我在 ROV/BIOS/扫描错误选项卡上看到以下错误:  

完整的错误消息是: Error: Problem scanning pend Queue: JavaException: java.lang.exception: target memory read failed at address: 0x0, length: 8根据应用程序的段映射,此读取位于无效地址。 应用程序可能未初始化或已损坏。  

在堆栈选项卡上,我得到了:

在队列选项卡上,我得到了:

然后,我启动并停止应用程序,并得到以下错误:

并在 HWI 选项卡上显示以下内容

和  

队列选项卡上的以下内容:

有人可以帮助吗?

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

    在 CCS v7.4中执行"BIOS 扫描错误"时、我会看到与您相同的问题、 但是、当我根据 SW 开发人员指南中的指定构建指令来构建 simple_peripheral STK 项目时、我看不到 BLE-Stack v2.2.1的其他运行时错误、包括使用 TI ARM 编译器 v5.2.6。 也许您使用的是不同的编译器和/或遇到了一些堆栈溢出。 您能否详细说明您的构建环境以及所做的任何更改?

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

    您好!

    我使用的是 TI 编译器版本16.9.6。 我尝试了17.9.0、结果相同。
    我尝试使用 Comipler 5.2.6、但它似乎无法下载并安装。 与5.2.9版相同、我可以下载但不能安装它。
    我尝试了 Sensortag exemple 应用程序、结果相同。

    我没有通过更改编译器版本对原始 exemple 项目 appart 进行任何更改。 这对结果没有影响。

    ROV 的另一个奇怪的问题是、sensortag 应用程序的 sensortag_Fxn 任务在 ROV/任务中的某个时间出现并消失。
    其他任务(如 Idle、GapRole 和 iCall)将始终显示。 我还应该有 sensorTagTmp、Hum 和 Bar 任务、但它们永远不会出现。


    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您能否尝试在 Windows 中清除%TEMP%路径并重新安装 v5.2.6编译器?

    另一个选项是增加 App/GapRole/iCall 堆栈的任务堆栈大小。

    祝你一切顺利
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我清除了%temp%、但 v5.2.6编译器不会出现在 CCS 中的可用软件列表中。 了解如何获取它
    我将尝试增加堆栈、但它们的峰值似乎低于堆栈大小。
    为什么您认为尺寸不大?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    通过更新向导在 CCS v7.4 (内部版本15)中应用所有 CCS 更新后、我能够在 ROV 中看到没有错误(请参阅下面的内容)。

    我可以通过将 peripheral.c 中的 GapRole 任务大小增加100字节到540字节来解决16.9.6.LTS HWI 问题:

    #ifndef GAPROLE_TASK_STACK_SIZE
    #define GAPROLE_TASK_STACK_SIZE      540
    #endif

    请注意、我们没有使用此编译器版本测试整个系统、因此在所有情况下、结果可能并不一致。

    下面是 BIOS ROV 在 main 中创建所有任务后没有报告错误的屏幕截图:

    最后、如果您遇到无法安装编译器5.2.6的问题、我建议您在 CCS 论坛中发帖、CCS 专家可以在论坛中提供进一步帮助。

    祝你一切顺利

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我从头开始重新安装所有内容、但仍然遇到相同的问题。
    我使用16.9.6编译器重建 SYS/BIOS。
    我还增加了堆栈大小、但没有成功。
    我似乎有一些具有队列和信标的虚拟空任务、这些任务是在进入 main.c 之前创建的
    任务函数名为__ASM__,对应于.map 文件中的地址0x00000000。
    当我查看这些队列的地址时、它们会按照.map 文件进入 spiCC26XXDMA 对象

    有什么想法吗?

    此致。