工具/软件:Code Composer Studio
尊敬的先生:
我已配置用于 PWM 生成。 但信号在 P2.3端口引脚上不可用。
请找到以下代码。
int main (空)
{
WDTCTL = WDTPW | WDTHOLD;
PM5CTL0 &=~LOCKLPM5;
OutPutPortConfiguration();
TimerB0_Configuration ();
PWMGeneration();
while (1)
{
_bis_SR_register (LPM0_bits | GIE);
__no_operation();
_delay_cycles (500);
}
}
空 OutPutPortConfiguration (空)
{
P2DIR |= BIT3; //P2.2和 P2.3
P2OUT &=~BIT3;
P2SEL0 |= BIT3;
P2OUT |= BIT3;
}
空 TimerB0_Configuration (空)
{
TA0CTL |= TACLR; //开始前清除 TimerA
TA0CTL |= MC__UP; //UP 计数器
TA0CTL |= TASSEL_ACLK; //32768Hz
}
空 PWMGeneration (空)
{
TA0CCR0 = 32768; //周期为1秒
TA0CCR1 = 16384; //DUTYCYCLE 为500mS
TA0CCTL0 |=CCIE;
TA0CCTL0 &=~CCIFG;
TA0CCTL1 |=CCIE;
TA0CCTL1 &=~CCIFG;
TA0CCTL0 |= OUTMOD_7;
TA0CCTL1 |= OUTMOD_7;
}
#if 1.
#pragma vector = TIMER0_A0_vector
_interrupt void ISR_TA0_CCR0 (void)
{
//P2OUT |= BIT3;
TA0CCTL0 &=~CCIFG;
_BIC_SR_REGISTER_ON_EXIT (LPM0_BITS);
}
#pragma vector = TIMER0_A1_vector
_interrupt void ISR_TA0_CCR1 (void)
{
//P2OUT &=~BIT3;
TA0CCTL1 &=~CCIFG;
_BIC_SR_REGISTER_ON_EXIT (LPM0_BITS);
}
#endif