注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
canoly的个人空间 https://home.eeworld.com.cn/space-uid-343164.html [收藏] [复制] [分享] [RSS]
日志

有关430定时器A、B,求高人解答

已有 845 次阅读2011-7-14 19:25

我只是用定时器A、B交替定时产生高低电平,做测试用的,但是即使定的时间相同,出来的PWM波形的高低电平宽度相差很大,这是为什么啊?
两个定时器 的中断是间隔开启的。
#include  <msp430x15x.h>


void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;       //关看门狗 

  Clock_Init();
  io_init();
  TB_dingshi();
  TA_init();
 
  
   _EINT();
   while(1);
}

void  io_init()
{
  P1DIR|=BIT7;//测试用I/o
}
void TA_init()
{
    TACTL = TASSEL_2 + TACLR+ MC_1;   // SMCLK, upmode
    TACCTL0 = CCIE;                           // TACCR0 interrupt enabled
    TACCR0 = TA_CCR0;
                      
}
/*==================================TB的初始化设置=========================================
函数名称: void TB_dingshi()
函数功能:定时器A捕获设置,用于捕获上升沿
函数参数:
===========================TBCTLTBCTL==============================================================*/
void TB_dingshi()
{

  TBCCR0 = TB_CCR0;
  TBCTL = TBSSEL_2 + TBCLR+ MC_1;                  // SMCLK 8M, upmode 
}

// Timer A0 interrupt service routine
#pragma vector=TIMERA0_VECTOR
__interrupt void Timer_A (void)
{
  P1OUT |= BIT7;
  
  TACCTL0 &=~ CCIE;
 TBCCTL0 |= CCIE;

}

/*==================================TB的中断服务程序=========================================
函数名称: Timer_BISR
函数功能: 定时器B中断服务子函数,定时
函数参数:
=========================================================================================*/

#pragma vector=TIMERB0_VECTOR
__interrupt void Timer_B0 (void)
{
 
   P1OUT &=~ BIT7;

   TBCCTL0 &=~ CCIE;
   TACCTL0 |= CCIE;
 
 
}

/******************************时钟模块*****************************************
函数功能:初始化XT2时钟函数
*******************************************************************************/
void Clock_Init()
{
   uint iq0;
   
   BCSCTL1 &= ~XT2OFF;     //打开XT2振荡器
   
   do
   {
      IFG1 &= ~OFIFG;//清除振荡器失效标志
      for (iq0 = 0xFF; iq0 > 0; iq0--); //延时,等待XT2起振
   }
   
   while ((IFG1 & OFIFG) != 0);//判断XT2是否起振
   
   BCSCTL2 = SELM_2 + SELS;        //选择MCLK、SMCLK为XT2
                                        //为高速时钟 不分频,均为8M
}

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章