MSP430 定时器A 增计数模式连续计数模式的使用求解.......

[复制链接]
4636|5
 楼主| ZYZ956 发表于 2012-7-15 08:17 | 显示全部楼层 |阅读模式
#include <msp430g2553.h>

void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
  P1DIR |= 0x01;                                     // P1.0 output
  CCTL0 = CCIE;                                  // CCR0 interrupt enabled
  CCR0 = 50000;
  TACTL = TASSEL_2 + MC_2;                  // SMCLK, contmode

  _BIS_SR(LPM0_bits + GIE);                 // Enter LPM0 w/ interrupt
}

// Timer A0 interrupt service routine
#pragma vector=TIMER0_A0_VECTOR
__interrupt void Timer_A (void)
{
  P1OUT ^= 0x01;                            // Toggle P1.0
  CCR0 += 50000;                            // Add Offset to CCR0
}
这个程序MSP430  定时器增计数模式连续计数模式的使用。但我有一个疑问,就是如果CCR0的值不断相加,一旦它大于了最大允许值时,会怎么样?请各位不吝指教!谢谢!
 楼主| ZYZ956 发表于 2012-7-15 08:37 | 显示全部楼层
没人吗?
wuhao1061 发表于 2013-11-21 23:11 | 显示全部楼层
同问啊
jshpy 发表于 2015-7-7 12:17 | 显示全部楼层
内部有自动校准的机制吧,使得下一个CCR0中断的时间间隔与之前相同。
豆腐块 发表于 2015-7-7 17:43 | 显示全部楼层
一旦它大于了最大允许值就溢出来,所以要重新装载初始值
尤彼卡 发表于 2015-7-7 22:19 | 显示全部楼层
计数满会产生中断
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

5

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部