关于定时器比较模式编程的问题

[复制链接]
772|3
 楼主| 聂志钧 发表于 2015-9-22 23:09 | 显示全部楼层 |阅读模式
我设想编程让P1.0口的小灯由CCR1比较器产生的中断导致闪烁,但是好像这个程序无法进入中断,请问大家这是为什么,还有就是CCR1=5900-1这种写法和CCR1=5899有什么区别呢?我是初学者,看到网上两种写法都有比较疑惑。
请大家不吝赐教,这里先行谢过了,。
//要完成的功能是利用定时器A的CCR1比较产生中断使P1.0小灯亮起

#include "msp430g2553.h"
void main()
{
  WDTCTL = WDTPW + WDTHOLD ;
  P1DIR=0xFF;
   P1OUT=0X00;
     TACTL=TACLR+TASSEL_2+MC_2;
CCTL1 =  CCIE;
     CCR1=5900-1;

  while(1);
}
#pragma vector=TIMER0_A0_VECTOR
__interrupt void Timer(void)
{
  switch(TAIV)
  {
case 2:
  P1OUT^=0X00;
  CCR1+=5900-1;
   break;
case 4:
  break;
case 10:
  break;

}
}

  
  
  

dirtwillfly 发表于 2015-9-23 08:56 | 显示全部楼层
mspware有用定时器来控制led闪缩的例程,先运行下例程吧
dirtwillfly 发表于 2015-9-23 08:56 | 显示全部楼层
CCR1=5900-1这种写法更直观
firstblood 发表于 2015-9-23 21:58 | 显示全部楼层
这个没有啥区别的,只是给写程序的很直观的,这个实际计5900个数的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

7

帖子

1

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