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.

[参考译文] LP-MSPM0L1306:计时器示例代码

Guru**** 2392095 points
Other Parts Discussed in Thread: MSPM0L1306

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1515450/lp-mspm0l1306-timer-sample-code

器件型号:LP-MSPM0L1306
主题:MSPM0L1306中讨论的其他器件

工具/软件:

您好:

我通过修改 MSPM0L1306 LaunchPad 上的"timx_timer_mode_periodic_sleep"示例代码来使用计时器。 (我使用了 CCS20.0.2)
我创建了"timx_timer_mode_periodic_sleep_modify"工程、并附上了文件。 下面是关于计时器实践的实践培训视频、对此进行了介绍。
https://www.ti.com/video/series/hands-on-practice-lp-mspm0l1306.html

但是、当我运行该工程时、我不确定、但代码跳过 Key_Short_Long_Click_Detect main.c 中"switch/case"函数的"switch/case"(第88行至第146行)。
我尝试了附加文件(CMSIS_DSP_EMPTY_LP_MSPM0L1306_nortos_ticlang)中具有"switch/case"的简单代码。
在这种情况下,我可以整理预期的行为。

下面是我希望您确认的内容。

Q1,你能否证实你是否可以再现我的上述现象?
Q2,如果是,你能给我建议来避免这种情况吗?

此致、  


e2e.ti.com/.../7026.E2E.zip

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

    不会初始化 KEY_STATE 和 KEY_P  

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

    您好、

    嗯、当我在 CCS20.2上运行代码时、我确认"KEY_STATE"为"0"。 即使我确认了"0"、我也看不到输入"switch/case"的代码。
    我明天会尝试、但当您为"KEY_STATE"添加初始值时、您能看到输入"SWITCH/CASE "的代码吗?

    此致、

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

    您好:

    我添加了如下所示的初始代码。 但同样的现象仍然观察...

    此致、

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

    能否降低优化水平? 我记得,如果我使用 O2,它将跳转到默认处理程序。

    Beisdes、我建议您使用 TI-Clang 编译器。

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

    您好:

    很抱歉我迟到的答复。
    >是否可以降低优化级别? 我记得,如果我使用 O2,它将跳转到默认处理程序。
    当我将优化级别从 O2更改为 O0时、我可以确认预期的行为。
    我可以确认预期的行为、但我不确定此行为的含义"它将跳转到默认处理程序"。 句子。
    您能否详细解释一下上述句子?

    > Beisdes,我建议您使用 TI-Clang 编译器。
    另一方面、我也尝试执行上述操作。
    但是、在这种情况下、我观察到了以下错误。 发生此错误后、即使我重新设置为以前的编译器(在本例中为 gcc 编译器)、我也会继续观察到相同的错误。

    我没有任何想法来解决这个问题,一般情况下,我如何能在创建项目后更改编译器?
    这是我的方式。

    1.在更改编译器之前执行"清理项目"。
    2.以下更改了编译器。
      "properties"->"General"->选择所需的"编译器"。
      (在本例中、我将 GNU v9.2.1"更改为"TI Clang v4.0.1"。)
    3.在"保存并关闭"后,我执行了"构建项目"。

    如果你在上面发现了一些错误,你能纠正我吗?

    此致、

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

    我只是说我在首次运行时重新创建您的问题。 它跳转到默认处理程序。 为了调试所发生的细节,我关闭了优化。 问题已解决。 我查看编译器、即 GCC。 对于 TI-Clang、TI 将对其进行测试并确保代码按预期工作。 对于 GCC、不受控制。 通常、我们建议用户使用较低的优化级别。

    我不知道如何解决这个问题、一般我如何在创建项目后更改编译器?

    我也不确定、我建议您从 SDK 中的空示例开始、然后将 C 代码工程复制到其中。 这将是容易得多。

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

    我懂了。 感谢您的支持。