内容发布更新时间 : 2024/11/1 7:40:28星期一 下面是文章的全部内容请认真阅读。
Timer_A,16位计数器,含有3个捕获 1:TACTL 15~10 9 8 7 6 5 未用 SSEL1 SSEL0 ID1 ID0 MC1 4 MC0 3 未用 2 CLR 1 TAIE 0 TAIFG 定时器时钟源选择:
SSEL1 SSEL0
0 0 (特定外部信号) 0 1 (TASSEL0) ACLK 1 0 (TASSEL1) SMCLK 1 1 (INCLK)
MC1 MC0组合选择Timer_A的工作模式
0 0 停止模式:
停止模式下,定时器不复位,回复工作后,按照停止时刻的状态继续运行,如果需要情况,请使用TACTL中的CLR清空。
0 1 增计数模式:
TAR == CCR1的时候产生一次中断。当TAR == CCR0的时候,定时器计数清零。因为CCR0为16位寄存器,所以该模式适用于定时周期小于65536的连续计数情况。计数器TAR可以增计数到CCR0的值,当计数值与CCR0的值相等(或定时器值大于CCR0的值)时,定时器复位并从0开始重新计数。
需要注意的是在增计数模式时CCR1和CCR2的值应该小于CCR0,否则CCR1和CCR2不会产生中断。
1 0 连续技术模式
计数器计数到FFFFH之后,清零计数。
1 1 增/减计数模式
先增,后减,产生堆成波形。增计数到CCR0,在减数到0。
2:CCTLx 捕获比较寄存器:
15 14 13 12 CCISx 4 CCIEx 11 SCS 3 CCIx 10 SCCI 2 OUT 9 1 COV 8 CAP 0 CCIFGx CMx 7 6 5 OUTMODx CM1~0 用来选择捕获模式
0 0 禁止捕获 0 1
上升沿捕获
1 0 下降沿捕获
1 1 上升沿和下降沿捕获
CCIS1~0 用来选择输入源
0 0 选择CCIxA为捕获事件的输入信号源
0 1 选择CCIxB为捕获事件的输入信号源 1 0 选择GND为捕获事件的输入信号源 1 1 选择Vcc为捕获事件的输入信号源 CAP 选择捕获模式还是比较模式 0 比较模式 1 捕获模式
OUTMODx 选择输出模式
3:CCRx 捕获/比较寄存器 4:TAIV 中断向量寄存器 5:TAR 16位计数器内容 TimerA输出模式:
输出模式0 :
输出模式:输出信号OUTx由每个捕获/比较模块的控制寄存器CCTLx中的OUTx位定义,并在写入该寄存器后立即更新。最终位OUTx直通。 输出模式1 :
置位模式:输出信号在TAR等于CCRx时置位,并保持置位到定时器复位或选择另一种输出模式为止。 输出模式2:
PWM翻转/复位模式:输出在TAR的值等于CCRx时翻转,当TAR的值等