注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
穿越火线大月的个人空间 https://home.eeworld.com.cn/space-uid-438942.html [收藏] [复制] [分享] [RSS]
日志

msp430 定时器学习笔记

已有 3473 次阅读2012-9-27 13:30 |个人分类:msp430g2553笔记|

msp430 定时器学习笔记
_BIS_SR(LPM2_bits + GIE)  //进入LPM3低功耗模式和开总中断允许
中断

#pragma  vector=TIMERA0_VECTOR
__interrupt void Timer_A(void)
{
 
}
 
 
 
TACTL   timerA控制寄存器
TAR     timerA计数器
CCTL0   捕获/比较控制寄存器0
CCRO    捕获/比寄存器0(具有最高中断优先级别,单独使用一个中断向量)
CCTL1   捕获/比较寄存器1
CCR1    捕获/比较寄存器1
CCTL2   捕获/比较寄存器2
CCR2    捕获/比较寄存器2
TAIV    中断向量寄存器

其中,定时器,CCR2,CCR1三者共用一个中断向量

TimerA输出模式:
输出模式0   输出模式:输出信号OUTx由每个捕获/比较模块的控制寄存器CCTLx中的OUTx位定义,并在写入该寄存器后立即更新。最终位OUTx直通。
 
输出模式1  置位模式:输出信号在TAR等于CCRx时置位,并保持置位到定时器复位或选择另一种输出模式为止。
 
输出模式2  PWM翻转/复位模式:输出在TAR的值等于CCRx时翻转,当TAR的值等于CCR0时复位。
输出模式3  PWM置位/复位模式:输出在TAR的值等于CCRx时置位,当TAR的值等于CCR0时复位。
输出模式4  翻转模式:输出电平在TAR的值等于CCRx时翻转,输出周期是定时器周期的2倍。
 
输出模式5  复位模式:输出在TAR的值等于CCRx时复位,并保持低电平直到选择另一种输出模式。
输出模式6  PWM翻转/置位模式:输出电平在TAR的值等于CCRx时翻转,当TAR值等于CCR0时置位。
 
输出模式7  PWM复位/置位模式:输出电平在TAR的值等于CCRx时复位,当TAR的值等于CCR0时置位
 
TACTL
15-10 9 8 7 6 5 4 3 2 1 0
未使用 SSEL1   SSEL0   ID1     ID0     MC1     MC0     未使用  CLR     TAIE    TAIFG
定时器时钟源选择:
SSEL1    SSEL0    
0          0  (特定外部信号)
0          1  (TASSEL0)  ACLK
1          0  (TASSEL1)  SMCLK
1          1  (INCLK)
通过MC1  MC0组合值来觉得TimerA的工作模式

0  0  停止模式。停止模式下,定时器不复位,回复工作后,按照停止时刻的状态继续运行
如果需要情况,请使用TACTL中的CLR清空
0  1  增计数模式
TAR == CCR1的时候产生一次中断。但是只有TAR == CCR0的时候,定时器才复位。(65535)
1  0  连续技术模式
0---0x0FFFH之后重新计数
1  1  增/减计数模式   先增,后减,产生堆成波形。
先到CCR0,然后减到0.周期翻倍。

对于更改CCR0的时
如果更改CCRO的值比之前大,则直接走到更改的值返回复位。
如果更改的值比之前的值小,分为2种情况:
1,此时时钟处于高,则遇到下降沿立马复位。
2.如果时钟处于低,则在下一个时钟周期下降沿复位(多往前走一个时钟周期)
修改TAR CACTL  中CLR,CM0 CM1的时候,需要先停止计数器

//就是把当前计数器TAR的值抓取放到CCRX当中
当CCTLx中的CAPx=1,该模块工作在捕获模式。这时如果在选定的引脚上发生设定的脉冲触发沿(上升沿、下降沿或任意跳变),则TAR中的值将写入到CCRx中。
当捕获完成后,中断标志位CCIFGx 被置位
 
评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章