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

2019-07-26 15:06发布

#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的值不断相加,一旦它大于了最大允许值时,会怎么样?请各位不吝指教!谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
ZYZ956
1楼-- · 2019-07-26 16:38
没人吗?
wuhao1061
2楼-- · 2019-07-26 19:32
 精彩回答 2  元偷偷看……
jshpy
3楼-- · 2019-07-26 22:04
内部有自动校准的机制吧,使得下一个CCR0中断的时间间隔与之前相同。
豆腐块
4楼-- · 2019-07-27 01:41
一旦它大于了最大允许值就溢出来,所以要重新装载初始值
尤彼卡
5楼-- · 2019-07-27 06:11
计数满会产生中断

一周热门 更多>