打印

关于MSP430G2553定时器程序

[复制链接]
3469|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
leshak|  楼主 | 2013-2-5 12:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 leshak 于 2013-2-5 14:16 编辑

     折腾了几天定时器,死活也搞不出来,没用外部晶振,用的是内部DCO,现将代码复制如下:


#include "io430.h"
void main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;
DCOCTL|=0x60;
  BCSCTL1|=0x83;    //DC0 4.25M   RSELx=11,DCOx=3 MODx=0 3V 4.25 MHz
  BCSCTL2|=0x00;
CCTL1|=CCIE;
   CCR1=42500-1;   //准备10ms定时
  TACTL = TASSEL_2+MC_1+TAIE+TACLR;      //TIMA=SMCLK  UP MODE开中断 清计数器
  P2DIR=0X01;    //P2.0输出  对应TIMER1 A

  
  
__bis_SR_register(LPM0_bits+GIE) ;     //开启中断一定要进入低功耗模式嘛?

}

#pragma vector=TIMER1_A1_VECTOR
__interrupt void Timer_A (void)
{
  switch( TAIV )
  {
  case 2:break;
  case 4:    P2OUT^=0X01;    // Capture/compare blocks TACCR1, TACCR2
  case 10:break;
  
}
}

不知道哪里出了问题,测P2.0就一直是高电平,还望高手指点下,谢谢了


相关帖子

沙发
leshak|  楼主 | 2013-2-5 13:00 | 只看该作者
本帖最后由 leshak 于 2013-2-5 14:16 编辑

继续研究...

使用特权

评论回复
板凳
vivilzb1985| | 2013-2-5 16:56 | 只看该作者
跟着研究了,很好的,谢谢啦

使用特权

评论回复
地板
一览| | 2013-2-6 15:33 | 只看该作者
用debug啊,看看有 没有进中断,有没有跑代码。

使用特权

评论回复
5
一览| | 2013-2-6 15:39 | 只看该作者
中断程序要放在case2处, 一定要仔细看手册中的定义。
还有需要学会debug时看寄存器内容。

使用特权

评论回复
6
hawksabre| | 2013-2-7 19:55 | 只看该作者
看看寄存器设置问题   感觉是程序进了中断后  没有出来

使用特权

评论回复
7
tianm| | 2013-2-10 06:01 | 只看该作者
你的问题是什么?

使用特权

评论回复
8
lixiao3717| | 2013-2-16 11:51 | 只看该作者
配置完系统时钟做个延时吧。
不知道使用DCO需不需要等待其稳定。这样做保险一点吧!
说的不对请大神指正。。。

使用特权

评论回复
9
mentoscui| | 2013-2-17 19:41 | 只看该作者
调试看问题在哪吧

使用特权

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

本版积分规则

101

主题

522

帖子

4

粉丝