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/MSP-EXP430FR5994:CCS/MSP-EXPFR5994 fatsd-tirtos 示例运行失败

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

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/594289/ccs-msp-exp430fr5994-ccs-msp-expfr5994-fatsd-tirtos-example-failure-to-run

器件型号:MSP-EXP430FR5994
Thread 中讨论的其他器件:SYSBIOS

工具/软件:Code Composer Studio

你(们)好

Code Composer Studio 版本:7.1.0.00016

我在特定的 TI-RTOS 示例中看到了一种非常特殊的行为。

具体而言、从 Resource Explorer 加载了 fatsd_MSP_EXP430FR5994_TI。

用于 MSP430-v:2.20.00.06/MSP-EXP-FR5994/驱动程序示例/FatFs 示例/FatSD 的软件/TI-RTOS

如果我将示例导入工程工作区、并且编译和调试并加载到 target....no problems....it 中、则运行正常。

但是、如果我只需右键单击工程并选择属性、然后完全不执行任何操作(不做任何更改)...除了在弹出式属性菜单中选择"确定"外、该程序不再能够运行。 它会生成并加载但卡在为我不知道的中断存根提供服务的 while 环路中。

暂停调试...我们位于 HWFuncs.c 中...

_interrupt void ti_SYSBIOS_family_MSP430_Hwi54 (void)

   while (1){};

我尝试限制编译、使其无法修改目标和/或 src 软件包目录。。。 当然、这不是示例的预期行为。

我的总体目标是能够修改属性、以便了解为什么我无法向 SD 卡写入大于32KB 的文件、但由于这个令人沮丧的问题、我无法更改这些属性。

我确实有相当多的 MSP 寄存器编程经验、但我不情愿地承认、使用 TI-RTOS 还不是很了解。

如果能提供任何帮助,将不胜感激。

谢谢

Dennis

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当您执行以下操作时、程序是否停止运行:
    -重新加载它?
    -重置目标并重新启动?
    -??

    您能提供您正在执行的确切步骤吗? 例如:
    导入 fatFS SD 示例
    1.构建应用程序
    2.点击调试图标
    3.它加载并位于 main()
    4.运行(并验证其是否正常工作)。
    5.停止目标
    6.打开属性,不执行任何操作
    7.再次点击调试图标
    8.等等

    我假设您对电路板进行下电上电、它就可以正常工作。 您能确认吗?

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

    这些是确切的步骤。 在步骤6和步骤7之间、有一个 GUI 弹出窗口、其中显示了带有"OK"按钮的属性。 下电上电不能"解决"此问题。 唯一有效的方法是删除导入的工程、然后再次导入。 当我打开"属性"菜单时、会发生一些不明显的情况、只会说"确定"。  打开属性菜单后...该示例停止运行。 我感到震惊的是,你不能像我所说的那样重复这一点。 重新加载不会影响结果、也不会重置、也不会循环通电或重建 COM。  当我尝试打开属性并"不做任何事情"但选择"确定"时、我相信 TI 的某个人将能够快速识别幕后发生的事情。 我没有看到与您的回复相关的典型 TI 代表、因此我假设您只是另一位工程师、试图帮助一位工程师同事。 如果我不正确...那么我非常愿意完成您建议的每一步、以达到其底部。 谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Todd、我认为您是 TI 员工。 我在输入回复时没有显示、但现在已显示。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    正如我在初始说明中提到的、我的意思是停止运行、我们输入一个连接到某些特殊中断存根的永久性 while 循环。 该行为在调试/运行程序的第一个实例中不存在。 该行为仅在打开属性后出现...根本不执行任何操作...点击"确定"、然后再次尝试调试/运行。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我有 LP 板。 我现在将尝试重现问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Arthur:

    奇怪! 我重现了这个问题。 它看起来像是 libmpu_init.a、在项目配置中、定义的重新排序是以某种方式发生的。 我无法找到解决方法。 仅当我查看项目属性中的"Build"和"General"窗口时才会发生这种情况(就像您在不更改任何内容的情况下点击 OK)。 我需要聘请一位 CCS 专家来了解这里发生的情况。 请继续关注...

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

    我更喜欢这个...

    如果您重新打开项目属性并从 Build->MSP430 Linker->Advanced Options->Command File Preprocessor 中删除_MPU_enable、那么我就能够重建并使其正常运行。

    我不知道_mpu_enable 是如何注入项目的。 我已 Ping CCS 和 MSP430团队获取他们的意见。

    Todd

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

    我们似乎在项目和 CCS 认为需要设置选项的内容之间存在问题。  当您单击"OK"时、基本上 CCS 会看到应该启用 MPU 并将其启用。  中断了该项目。

    修复此问题的最佳方法是进入工程属性并禁用 MPU。  

    我们(TI)需要为项目提供一种覆盖导入项目时应用的器件默认设置的方法。  我已提交缺陷以跟踪该缺陷。

    此致、

    John

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

    太棒了! 感谢您的发现和提供解决方案。

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

    我禁用了 MPU、并且有一个弹出窗口标记为"发生了多个问题"。 它似乎在继续构建和连接,我可以加载和运行程序……所以我不确定它真的有多糟糕…

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

    我认为这不是来自编译本身。  如果您单击"详细信息"按钮、会说什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    它说...发生了内部错误。
    参数无效
    似乎只有在程序运行后才会发生这种情况。 即构建、调试和运行。 然后返回并尝试再次构建。 老实说、我很高兴您能找到原始问题的解决方案、现在我可以开始尝试了解为什么我无法使用此示例写入大于32KB 的文件。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    这里是一个指向另一个遇到此问题的线程的链接。

    此致、

    James

    MSP 客户应用