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.

[参考译文] CC2642R:将 MAX72xx 库与 CC2642R1F 微控制器集成问题

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1489587/cc2642r-issue-integrating-max72xx-library-with-cc2642r1f-microcontroller

器件型号:CC2642R
Thread 中讨论的其他器件:SysConfigCODECOMPOSER

工具/软件:

尊敬的 TI 支持团队:  

 将 MAX72xx 库(用 C++编写)集成到我的项目中时遇到错误。 我正在使用 MAX7219 IC 以及 CC2642R1F 微控制器来进行 LED 控制的工程。

请查找我们正在使用的版本的详细信息:

  • SDK 版本: simplelink_cc13x2_26x2_SDK_5_20_00_52
  • 系统配置程序版本: SysConfig_1.8.2
  • Code Composer Studio 版本: 11.1.0.00011.

请告诉我、我是否需要安装任何其他版本才能在 Codecomposer 中编译 C++代码

我们希望您能尽快解决此问题。
如果您需要更多详细信息、敬请告知。

此致、
Triveni H M

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

    尊敬的 Triveni:

    此编译失败似乎与 MAX72xx 库无关、除非您 使用特定的编译器使其正常工作。   您使用的 CC13X2/CC26X2建议的编译器为 ARM-CGT 20.2.4.LTS。  您可以 根据所使用的版本查看编译器用户指南 pragma 指令。  该错误涉及对以下 ccfg.c 行的错误解释(由 SysConfig 生成的 ti_devics_config.c 引用):

    #pragma DATA_SECTION(__ccfg, ".ccfg")
    #pragma RETAIN(__ccfg)

    此致、
    Ryan

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

    您好、Ryan、

    我们正在基于开发一个项目 CC2642R1F 我们的基本代码是写在里面的 C 。 我们目前正在尝试将 C++源文件集成到现有工程中。

    为了验证 C++支持、我们运行了基本的 C++测试(例如、切换 GPIO)、没有出现问题。 但是、当我们尝试添加时 实际的 C++应用程序代码 、程序开始运行、但随后意外点击 断点 尽管我们尚未在该位置显式设置一个。

    • SDK 版本:  simplelink_cc13x2_26x2_SDK_5_20_00_52
    • 系统配置程序版本:  SysConfig_1.8.2
    • Code Composer Studio 版本:  11.1.0.00011.

    我们非常感谢您提供的任何指导或示例

    此致、

    Triveni H M

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

    首先、我必须警告、您的工程使用的编译器(Clang v1.3) 对 SimpleLink CC13X2/CC26X2 SDK v5.20的支持有限、但如果您的基准工程没有出现问题(即在添加  MAX72xx 库之前工作了基于 C++的代码)、这可能不是问题。

    如果没有调试器参与、则不会发生断点、相反、您可能会在永久循环的同时进入硬件断点。  请  逐步执行代码并发现库的哪一部分导致问题、从而提供更多调试详细信息。  您是否有 displayBitmap 函数的源代码、以及 MAX72xx 库的来源?

    此致、
    Ryan

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

    您好、Ryan、

    我们安装了最新的 SDK 版本:simplelink_cc13xx_cc26xx_sdk_8_30_01_01

    我正在努力将 MD_MAX72xx LED 矩阵驱动器库与 CC2642R1F 集成。 集成成功、代码编译没有任何问题。 但是、当我运行应用程序并验证代码流时、我在执行过程中会遇到问题。

    具体而言、在 SETC 方法中、代码正确流动、直到出现以下行:

     

    代码正常执行、直到到达中的这一行 MD_MAX72xx_buf.cpp

    if (value &(1 << i))

    此行会被触发、但紧随其后、执行会跳转到 error.c 文件的以下代码段:

     

    if (Error_policy_D == Error_spin){

      for (;;){

      }

    }

    似乎正在触发一些断言或内部错误处理、但没有明确的错误或断言消息来解释原因。

    作为参考、我使用的 MD_MAX72xx 库来自以下 GitHub 存储库:
     Point right https://github.com/MajicDesigns/MD_MAX72XX/tree/main/src 

    此致、

    Triveni H M

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

    尊敬的 Triveni:

    我假设位 Set、 HW_ROW 或 HW_COL 函数 导致硬件置为有效。  由于编译器优化、您可能难以确定根本原因。  这是否是 器件启动后在代码中调用这些操作的第一个位置?  您可以将第211/212行拆分成多个操作、以进一步确定故障发生的位置。  您是否考虑向 Github 项目贡献者征求建议?

    此致、
    Ryan