繁体   English   中英

C 中 MSP430FR6989 的时序功能

[英]Timing functions on the MSP430FR6989 in C

对于一个项目,我想计算 function 需要多长时间。 为此,我正在考虑使用 TimerA TA0 和捕获。 但是,在查看文档后,我想知道是否可以使用内部“消息”来捕获计时器。 在数据表( http://www.ti.com/lit/ds/symlink/msp430fr6989.pdf第 87 页,页面底部的表格)中,我不太清楚如何执行此操作。 它说明了可以使用的端口引脚,但我(显然)对此不感兴趣。 因此,我在考虑是否能够写入 TAxIV 注册器,自己设置中断标志,但我绝对不确定它是否会起作用(我真的不这么认为,但我不知道为什么),我可以用它来捕获计时器。

我也已经看过示例代码,但他们使用 ACLK 作为输入信号。 所以这也没有多大用处。

提前致以诚挚的问候和感谢

如用户指南中的 Timer_A 框图(图 25-1)所示,捕捉信号必须来自四个捕捉输入之一。

最后两个输入始终连接到 GND 和 V CC ,因此您可以通过在这两个输入之间切换来手动触发捕获(参见第 25.2.4.1.1 节)。

答案是(感谢 go 到 CL。,见上文,谁给出了答案):

初始化:

TA0CCTL1 = CM_3 | CCIS_1 | SCS | CAP; // could put in interrupt here
TA0CTL = TASSEL__SMCLK | MC__CONTINUOUS; // setting the timer up with the SMCLK

并且对于使用,意味着捕获计时器:

TA0CCTL1 ^= CCIS0 // TA0CCR1 = TA0R, toggling the CCIS0 bit to switch between Vcc and GND

然后只是读取捕获寄存器。

这个答案是为了更容易阅读,完整的答案请参见我与 CL 的对话。 上面,谁给了我答案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM