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.
您好!
如果您看一下 SLAS704F、您会发现在功能方框图中、它提到 Timer A 的 ta0实例连接了3个捕获/比较模块。但是、如果您在同一文档的第6.10.20节中查看外设文件映射、则会发现有 5个捕获比较模块的基地址?
我对这份文件有点困惑、是否有人可以将其清除?
谢谢
您好、Jennifer、
它说 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点。
谢谢!
您好、Otto、
文档名称:www.ti.com/.../msp430fr5969.pdf
在页眉上添加注释:
SLAS704F–2012年10月–2017年3月修订
第76页上显示:
为什么您说这个特定的 TA0具有3个 CCR?
在整个文档中、它看起来并不一致。
是的、我最初提到的文档存在问题、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、
我进行了测试。
TA0和 TA1有3个 CCR。
TA2和 TA3有2个 CCR
TB0有7个 CCR。
对于 TA0、您可以写入 CCR3和 CCR4而不会出现错误。
当您读取这些寄存器时、您将收到0x0000。
请将此帖子标记为已解决。