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.

[参考译文] MSP430FR5969:Timer A 的 ta0实例上有多少个捕获比较模块?

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/690306/msp430fr5969-how-many-capture-compare-modules-are-there-on-the-ta0-instance-of-timer-a

器件型号:MSP430FR5969

您好!  

如果您看一下 SLAS704F、您会发现在功能方框图中、它提到 Timer A 的 ta0实例连接了3个捕获/比较模块。但是、如果您在同一文档的第6.10.20节中查看外设文件映射、则会发现有 5个捕获比较模块的基地址?

我对这份文件有点困惑、是否有人可以将其清除?

谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    基本上我需要知道:它是 Timer A 的 ta0实例上的五个还是三个捕获比较模块?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此外、请向我指出可能提供答案的任何文档。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jennifer、

    MSP430系列的基本文档是

    它说 Timer_A 最多可以有7个 CC 寄存器:

    对于 MSP430FR5969、TI 提供了一个示例项目 msp430fr59xx_ta0_01.c
    内核项目文件 msp430fr59xx_ta0_01.c 包含 main()并包含 include 语句:

    #include

    此声明包括:

    #elif defed (__MSP430FR5969__)
    #include "msp430fr5969.h"

    在 msp430fr5969.h 中,从第3375行开始,您将找到:

    SFR_16BIT (TA0CTL);                           /* Timer0_A3控制*
    SFR_16BIT (TA0CCTL0);                         // Timer0_A3捕捉/比较控制0 *
    SFR_16BIT (TA0CCTL1);                         // Timer0_A3捕捉/比较控制1 *
    SFR_16BIT (TA0CCTL2);                         // Timer0_A3捕捉/比较控制2 *
    SFR_16BIT (TA0R);                             /* Timer0_A3 *
    SFR_16BIT (TA0CCR0);                          /* Timer0_A3捕捉/比较0 *
    SFR_16BIT (TA0CCR1);                          /* Timer0_A3捕捉/比较1 *
    SFR_16BIT (TA0CCR2);                          /* Timer0_A3捕捉/比较2 *
    SFR_16BIT (TA0IV);                            /* Timer0_A3中断向量字*
    SFR_16BIT (TA0EX0);                           /* Timer0_A3扩展寄存器0 *

    Jennifer、

    与实时文档制作相比、处理真实软件总是更好。
    使用3个 CC 寄存器。

    恭喜您认真阅读!

    我将在这些文件中发表详细的评论。
    现在、我的时间是凌晨2点。

    谢谢!

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

    FR5969中的 TA0_3具有3个 CCR

    下面是另一种查看方法- TI 如何在 MSP430中命名计时器 A。 例如,5969上的 TA0_3:


    TA -定时器类型(还有一个定时器 B 类型)

    0 第一个此类型的计时器(5969具有 TA_0、1、2、3。 SO、4 TA 类型))

    _3 -这意味着3个 CCR 实例化(在5969、TA2_2和 TA3_2上有2个 CCR)


    这在 TI 的文档中似乎是一致的。

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

    您好、Otto、

    文档名称:www.ti.com/.../msp430fr5969.pdf

    在页眉上添加注释:

    SLAS704F–2012年10月–2017年3月修订

    第76页上显示:

    为什么您说这个特定的 TA0具有3个 CCR?

    在整个文档中、它看起来并不一致。

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

    以下是我刚才从您参考的相同数据表中提取的内容:

    6.10.10 TA0、TA1
    TA0和 TA1是16位定时器和计数器(Timer_A 类型)、每个定时器和计数器有3个捕捉/比较寄存器。 TA0和 TA 可支持多个捕获或比较、PWM 输出和间隔定时(请参阅表6-13和表6-14)。 TA0和 TA 具有广泛的中断功能。 在溢出条件下、计数器和每个捕捉/比较寄存器都可能产生中断。


    此外、方框图显示了 TA0_3 (以及 TA1、TA2、TA3):

    1.4功能方框图
    图1-1显示了器件的功能方框图

    所以、您是对的、该文档有一些奇怪的东西。 完全同意。

    如果我真的想深入探究(不过我不会这么做)、我只需启动 CCS、编写一个小程序、尝试访问从0到7的所有 CCR。 然后查看编译器标记错误的位置。 粗糙但快速。

    我在这里有几个 MSP、但不是5969。


    我现在可以理解原来的问题!

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

    是的、我最初提到的文档存在问题、Tomaz 提供了的屏幕截图。  

    我发现**非常**有问题,因为文档并非所有来源都一致,所以我必须仔细研究代码。 文档应该是了解处理器和示例代码**而不是**的主要来源。  

    如果 TI 的人员能够清除这个问题、那将会很棒。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    最好(也是标准做法)处理文档而不是代码。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    奥托、我了解实例化、我询问文档中的不一致之处
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jennifer、

    我已向 TI 团队提交了文档反馈。

    我为您看到3个选项:
    1) 1)其他 MCU 如果您真的需要5个用于 TA0的 CCR、我记得、5994具有7个用于 TA0的 CCR
    2) 2)使用3个 CCR 完成您所需的工作
    3) 3)快速测试可能有所帮助。 将 TA0CCTL3和 TA0CCTL4添加到 msp430fr5969.h 并编写一个简单的测试代码。 复位后、TA0CCTL9-2寄存器应包含0x0000。 您将从 TA0CCTL3-4中获得什么? 0x0000、0xFFFF 或 ISR?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Jennifer、
    我确实理解你的观点。 让我们希望 TI 能够加快步伐、让您满意地解决这个问题。
    谢谢、、、、
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    … 当然、Jennifer 没有给出技术要求、只是对文档的评论。
    但提供“免费建议”是很难抗拒的,所以… 如果他们在5969中需要更多的 CCR、为什么不像使用7一样使用 Timer B。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jennifer、

    我进行了测试。

    e2e.ti.com/.../7220.main.c

    TA0和 TA1有3个 CCR。

    TA2和 TA3有2个 CCR

    TB0有7个 CCR。

    对于 TA0、您可以写入 CCR3和 CCR4而不会出现错误。
    当您读取这些寄存器时、您将收到0x0000。

    请将此帖子标记为已解决。

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