Lỗi code xuất PWM

1412369

Trứng gà
#include <msp430g2553.h>
void timer()
{
TA0CTL = TASSEL_3 + MC_1;
TA0CCR0 = 10000;
TA0CCR1 = 10;
TA0CCTL1 = OUTMOD_7;
}
void port()
{
P1SEL |= BIT2+BIT1;
P1SEL2 &=~(BIT2+BIT1);
P1DIR |= BIT2 + BIT1;
}

void main(void)
{
WDTCTL = WDTPW | WDTHOLD;// Stop watchdog timer
timer();
port();
_bis_SR_register(LPM0_bits + GIE);

}

code của em định xuất xung pwm ra p1.1 và 1.2.. nhưng sao 2 cái led ở chân đó nó cứ sáng quắc.. không đúng mong muốn của em là sáng dần tắt dần vậy mấy anh chị..?
 

Sang Trần

Gà con
Staff member
Tham khảo code sau
Code:
#include <msp430g2553.h>
 
 
 
void main(void)
{
    WDTCTL = WDTPW + WDTHOLD;    //Tat watchdog timer
 
 
    TA0CTL = TASSEL_2 +MC_1;    //Timer Clock = SMCLK = 1Mhz, Mode Up
    TA0CCTL1 = OUTMOD_3;        // CCR1 : xuat xung theo mode 3
 
    P1SEL |= BIT2+BIT6;            //Port 1.2 và 1.6 cung co the xung theo CCR1(TA0.1)
    P1SEL2 &=~(BIT2+BIT6);        // Xem data sheet de biet pin nao co chuc nang nay
 
    TA0CCR0 = 100;                //Chon CCR0 lam chu ky và CCR1 la nguong de thay
    TA0CCR1=10;                    //doi gia tri OUT theo mode
 
 
    _BIS_SR(LPM0_bits + GIE);    //Low-power mode
}
 
Top