MSP430如何使输出的两个方波反相?

2019-07-15 15:49发布

MSP430如何使输出的两个方波反相?好像延时不可以啊
#include  <msp430x14x.h>
void delay(void);
void main(void)
{
   WDTCTL=WDTPW+WDTHOLD; //关狗
    int i;
    BCSCTL1&=~XT2OFF;                //打开XT2振荡器
    do
    {
       IFG1 &= ~OFIFG;              // 清除振荡器失效标志
       for (i=256;i>0;i--);         // 延时,等待XT2起振
    }
    while ((IFG1 & OFIFG) != 0);     // 判断XT2是否起振
    BCSCTL2 =SELM_2+SELS;            //选择MCLK=SMCLK为XT2
  P4DIR |= 0x7e;                            // P4.1 - P4.6 output
  P4SEL |= 0x7e;
  TBCTL=TBSSEL_2+MC_1;
  TBCCTL1 = OUTMOD_7;
  TBCCTL2 = OUTMOD_7;  
  TBCCR0=320;                      // P4.1 - P4.6 TBx options
  while(1)
  {                      // CCR1 reset/set
   TBCCR1 = 224;                             // CCR1 PWM duty cycle
   delay();
   TBCCR2 = 96;
  }
}
void delay(void)
{
    unsigned int tmp;
   
    for(tmp = 12000;tmp > 0;tmp--);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
中北初学者
1楼-- · 2019-07-15 18:00
没人回我,我就自己解答了,我用2个定时器去出两路方波,通过延时,使两路方波反相
中北初学者
2楼-- · 2019-07-15 23:14
 精彩回答 2  元偷偷看……

一周热门 更多>