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.

[参考译文] CC2650MODA:SPP 示例在 CC2650MODA 上以异常(ti_sysbios_family_arm_m3_Hwi_expler__I)结束

Guru**** 666710 points
Other Parts Discussed in Thread: CC2650MODA, CC2650, SYSBIOS, CC2640, CC2652RB
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1049768/cc2650moda-spp-example-ends-up-in-exception-ti_sysbios_family_arm_m3_hwi_exchandler__i-on-cc2650moda

器件型号:CC2650MODA
Thread 中讨论的其他器件: CC2650SYSBIOSCC2640CC2652RB

我在 CC2650 Launchpad 上的 BLE 示例2.2中试用了 SPP 服务器示例、经过一段时间的耗时、odyssey 现在可以正常工作。 然后、我尝试将其移植到 CC2650MODA 的 Booster Pack、但我没有成功。

我 最初以为这可能是一个缺失的 BIM、所以我现在安装了它(我在这个论坛中经过一些密集的搜索和询问后发现了它) 、但问题仍然存在。

还有什么可能导致 ti_sysbios_family_arm_m3/hwi_exHandler __i 中的 endles 循环?

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

    您好、Rainer、

    我已将您的帖子分配给一位专家以提供帮助。

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

    您好、Rainer、

    这可能很难调试。 您是否尝试过此 帖子中建议的策略

    此外、我建议查看 OAD SimpleLink Academy 的第4部分 、了解如何调试 BIM 以确保其正常工作。  

    最棒的

    不需要

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

    您好、Nathan、
    我已经对它进行了调试。 我通过 iCall_taskEntry (在 BIOS_start()中)、然后可能卡在 BIM 中(没有源代码的代码)。 在这里、它结束在一个环路中(000193ec-000193f2)。 永远不会到达000193f4处的断点、而是我结束在异常中:


    000193 ce:4621 mov R1、R4
    000193d0:4628 mov r0、R5
    000193d2:BD30 POP{R4、R5、PC}
    000193d4:2a00 CMP R2、#0
    000193d6:D04A beq #0x1946e
    000193d8:EA5F0C00 MOVs.w R12、r0
    000193dc:078B lls R3、R1、#0x1E
    000193de:D11C bne #0x1941a
    000193e0:0783 lls R3、r0、#0x1E
    000193e2:D122 bne #0x1942a
    000193e4:2A10 CMP R2、#0x10
    000193e6:D308 Blo #0x193fa
    000193e8:B470 PUSH{R4、R5、R6}
    000193ea:3A10 subs R2、#0x10
    000193ec:C978 LDM R1!、{R3、R4、R5、R6}
    000193 ee:C078 STM r0!、{R3、R4、R5、R6}
    000193f0:3A10 subs R2、#0x10
    000193f2:D2FB BHS #0x193ec
    000193f4:BC70 PoP{R4、R5、R6}
    000193f6:3210添加了 R2、#0x10
    000193f8:D038 beq #0x1946c
    000193fa:2A04 CMP R2、#4

    我认为、由于我"只"想将项目从 LaunchPad 切换到 CC2650MODA、因此软件在异常中结束的可能性不大。 我前面的许多人已经这样做了。 必须有粘结点存在的经验。 我该怎么做?
    在未知的 quagmire 中、我在调试中看不到任何问题、只是在事后才听到:"哦、是的、经常会发生这种情况"。
    如果在这种类似的芯片之间切换如此困难、以至于您不得不花费数天的调试时间、TI-RTOS 周围的整个软件环境会有何意义?

    此致

    滤网

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

    您好、Rainer、

    我理解您的沮丧。 当简单的更改变得异常复杂时、这绝对是一项挑战。 虽然我不能给您提供调试所花的时间、但我一定会尽力提供高效的帮助、以便您尽快解决此问题。

    我假设 SPP 是指我在 SDK 2.05.02和2.06.07中看到的 simple_np 示例。 这是准确的吗? 如果是、您使用的是哪个 SDK?

    此外、在这两个 SDK 中、我看到2650lp (launchpad)和2650bp (BoosterPack)都有 simple_np 项目。 我假设您使用2650lp 示例开发了原始应用。

    如果是这种情况、我看到从不同版本的器件/SDK 移植人员的最有效方法是使用未修改的 cc2650bp 示例创建新项目。 将其刷写到 BoosterPack 中、确保正确加载、然后 一次从2650lp 项目中添加几个文件中的更改、经常重新编译和刷写、以确保您可以快速隔离出现的任何问题。 您实际上只应更改应用程序、配置文件以及 include 文件夹。 请确保不要不必要地更改板级配置文件或 ccfg 文件。

    最棒的

    不需要

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

    你好、Nate、

    我指的是:

    C:\ti\ble_examples-ble_examples-2.2\examples\cc2650lp\SPP_ble_server\ccs

    这是其中的最新版本:

    https://www.ti.com/tool/TIDC-SPPBLE-SW-RD#support-training

    此处参考:

    https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/610423/tidc-sppble-sw-rd-uart-to-ble-bridge-design-supplemental-information-updated

    在 CC2650LAUNCHXL 板上运行、但在 Booster Pack 上不运行。

    同时、如果我首先确认过 bim 缺失在试管包中、我从您的同事那里了解到、在为 CC2650搜索一个 bim 的小时后、必须使用 CC2640的 bim。 因此我尝试了该 BIM 并再次得到该异常。 经过数小时的调试和逐步完成 assmbeler 代码的交换。 我决定查看 BIM 项目。 现在、在完成 BIM 项目后、我找到了这个小自述文件、它告诉我可以/应该在项目属性的常规部分中设置器件。

    这是我的当前情况。 我将器件设置为 CC2650F128、并得到如下构建错误:

    "C:/ti/simplelink/ble_sdk_2_02_01_18/src/common/cc26xx/ccs/cc26xx_bim_ext_flash.cmd、第89行:错误#10264:FLASH_PAGE0存储器范围与现有存储器范围闪存重叠
    "C:/ti/simplelink/ble_sdk_2_02_01_18/src/common/cc26xx/ccs/cc26xx_bim_ext_flash.cmd "、第94行:错误#10264:FLASH_PAGE31存储器范围与现有存储器范围闪存重叠
    "C:/ti/simplelink/ble_sdk_2_02_01_18/src/common/cc26xx/ccs/cc26xx_bim_ext_flash.cmd "、第98行:错误#10263:SRAM 存储器范围已指定
    "C:/ti/simplelink/ble_sdk_2_02_01_18/src/common/cc26xx/ccs/cc26xx_bim_ext_flash.cmd "、第98行:错误#10264:SRAM 存储器范围与现有存储器范围 SRAM 重叠
    "C:/ti/simplelink/ble_sdk_2_02_01_18/src/common/cc26xx/ccs/cc26xx_bim_ext_flash.cmd、第151行:警告#10190-D:重新定义了绝对符号"__STACK_TOP"
    "C:/ti/simplelink/ble_sdk_2_02_01_18/src/common/cc26xx/ccs/cc26xx_bim_ext_flash.cmd、第151行:警告#10190-D:重新定义了绝对符号"__STACK_TOP"
     
    "C:/ti/simplelink/ble_sdk_2_02_01_18/src/common/cc26xx/ccs/cc26xx_bim_ext_flash.cmd、第151行:警告#10190-D:重新定义了绝对符号"__STACK_TOP"

    现在怎么办?

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

    您好、Rainer、

    感谢您的澄清。

    既然我了解了您要利用的代码、我仍然坚持我的建议、即您应该从 CC2650 BoosterPack 的工作项目开始(例如 simple_np 示例)、 然后、将应用程序代码很少地集成到其中、而不是尝试为 Launchpad 或其他器件设置项目并使其适用于 BoosterPack。 我通常建议不要试图通过汇编文件进行解析、因为您无疑已经注意到、如果您不是在寻找特定的东西、这似乎不是一个非常有成果的练习。

    我还强烈建议在您开始移除旧 BIM 的任何残留物时对器件执行批量擦除。 之后、您可以将未修改的 CC2640 BIM 加载到器件中。 我认为这可能会导致您在上面遇到的错误。

    最棒的

    不需要

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

    你好、Nate、

    感谢您的回答。

    现在、我成功地将 CC2650的 BIM 与 CC2650F128一起编译、作为属性的常规部分中的自选器件。 问题是、通过选择 CC2650F128、编译器版本也发生了更改(不会导致错误的原因)、并且 会自动选择链接器文件(cc26x0f128.cmd)。 (不要说 TI 的文本探险游戏作者没有好的想法来让游戏变得非常艰难。) 取消选择链接器文件已删除错误(!????)
    但我仍然想知道我构建的 BIM 是否正确。 此外、LP 上还有两个构建配置和一个。 需要采取哪些行动?

    我进入了纯汇编器(我想是 BIM?)、因为我希望找到异常触发器所在的位置。 但有很多环路。 因此、我在一段时间(很长)后停止了它。 但我仍然认为 BIM 中的异常是触发器、因为它会在之前完成所有 iCall 任务、但永远不会到达主任务。

    我将首先尝试执行批量擦除。 如果您对 BIM 有一些提示...

    我认为我几乎不能整合该应用。 我已经选择了 SPP 示例(在 CC2652RB 上之前是简单的串行插座)、因为我只需要 BLE 通信、而不知道 BLE 内部信息。 我对 TI RTOS 的了解也不是很深。 我已经非常喜欢 CC2652RB、不得不在 SPP 基础上再次开始、因为很可能无法轻松地将项目转移到 CC2650MODA。 我们必须使用该模块、因为组件危机使我们别无选择。

    此致

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

    你好、Nate、

    按摩擦除、加载 BIM、加载堆栈、加载应用程序未成功。 我仍然有兴奋的东西。

    我不能不知道问题在哪里。 我认为 lauch pad 芯片和模块芯片是相同的芯片。 就在 CC2650MODA 版本上、有些引脚与芯片的键合程度较低。 因此、差异很小、可以在电路板配置文件的少数差异中看到(项目中也有一个用于 Booster Pack、另一个用于首选项中的预定义符号)。 因此、Misc利害 关系 mußt 不在 BIM 或堆栈中的应用程序范围内。 该堆栈由 SPP_ble_server_cc2650lp_stack 项目构建。 对吗? 我是否需要进行任何处理?

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

    您好、Rainer、

    我想我们已经摆脱了原来的问题,那就是你正在触发一个未知的 HWI,在你调用 BIOS_start()后,它会导致一个异常。 仔细研究一下,这与 BIM 无关,因为 BIM 是将您带到 main ()的第一个位置。 我觉得这与您在 BoosterPack 上设置引脚的方式有关。 也许您可以查看 board.c 文件并确保其设置正确。 我还建议从 launchpad 上移除 BoosterPack、仅连接 JTAG、电源引脚和接地引脚、以确保不会意外为不应该为之供电的引脚供电。

    最棒的

    不需要