打印

为什么编译interrupt[TIMERA0_VECTOR] void Timer_A (void)时老报错啊

[复制链接]
4543|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
zhangmangui| | 2013-7-29 19:01 | 只看该作者
中断服务函数有问题吧
//例程描述:利用定时器定时功能,实现P1.0方波输出。

#include <msp430x14x.h>

{
  WDTCTL = WDTPW + WDTHOLD;          //停止看门狗WDT,不使用内部看门狗定时器。
  P1DIR |= 0x01;                     //设置P1.0口方向为输出。
  CCTL0 = CCIE;                      //设置捕获/比较控制寄存器中CCIE位为1,CCR0捕获/比较功能中断为允许。
  CCR0 = 50000;                      //捕获/比较控制寄存器CCR0初值为5000。
  TACTL = TASSEL_2 + MC_2;           //设置定时器A控制寄存器TACTL,使时钟源选择为SMCLK辅助时钟。
  _BIS_SR(LPM0_bits + GIE);          //进入低功耗模式LPM0和开中断
}
//定时器A 中断服务程序区
//当IAR编译器版本大于或等于2.0以上时,则中断写法格式如下。
#pragma vector=TIMERA0_VECTOR        //定时器A0中断向量
__interrupt void Timer_A (void)      //中断函数
{
   P1OUT ^= 0x01;                    //P1.0取反输出
   CCR0 += 50000;                    //重新载入CCR0捕获/比较数据寄存器数据
}

//程序结束

使用特权

评论回复
板凳
小风魔乱舞|  楼主 | 2013-7-29 19:51 | 只看该作者
zhangmangui 发表于 2013-7-29 19:01
中断服务函数有问题吧
//例程描述:利用定时器定时功能,实现P1.0方波输出。

好的好的,我刚开始学定时器,只要给我个简单的程序就可以

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

37

主题

114

帖子

0

粉丝