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.

[参考译文] MSPM0G3507:MSPM0G3507

Guru**** 2390735 points
Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1486234/mspm0g3507-mspm0g3507

器件型号:MSPM0G3507
主题中讨论的其他器件:SysConfig

工具与软件:

尊敬的:

我希望使用计数器模式下的计时器对外部引脚上的脉冲进行计数。

如何配置和读取? 我没有找到一个示例。

首选示例代码而不是 SysConfig 工具的设置...

非常感谢!

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

    相关示例为 timx_timer_mode_compare_edge_count、如所示:

    https://dev.ti.com/tirex/explore/node?node=A__ALzqh4wA5MtgGbIqmSaTyw__MSPM0-SDK__a3PaaoK__LATEST

    尽可能接近、所有用于 MSPM0的 TI 示例都使用 SysConfig/driverlib。 该工程的.syscfg 文件信息不是很丰富、因为它显然依赖于 SysConfig 默认值、例如未明确提及"edge_count_down"。

    ---

    该原理在 TRM (SLAU846B)章节中进行了阐述  27.2.3.1.1.简而言之:

    (1) CTRCTL:CAC (计数器超前触发)指向 CCTL_01[]条目(引用外部引脚)。

    (2)该条目的 CCTL_01[].ACOND (前进条件)设置为上升/下降/双边沿(而不是 TIMCLK、正如普通计时器那样)。

    (3)要获得边沿数、只需读取 CTR 寄存器;要在 N 个边沿后收到通知、请将 N 放入相应的 CC_01寄存器(并启用相应的 CCUn 或 CCDn 中断)。

    还有一些其他辅助设置(EN=1、方向向上/向下、如果您需要连续计数、则 LOAD=0xFFFF)、但设置 ACOND 是核心。