這個占空比33% 不是特別準, 因為14不夠3整除
// *************Frequency= 38K,dutycycle=33%*******************************
// MSP430G2553
// -----------------
// /|\| XIN|-
// | | |
// --|RST XOUT|-
// | |
// | P1.2/TA1|--> CCR1 - 33% PWM
//
// as SMCLK = MCLK = default DCO=1.045MHZ
// CCR0= 1045000/38k/2=14
//******************************************************************************
#include <msp430.h>
int main(void)
{
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
P1DIR |= 0x0C; // P1.2 and P1.3 output
P1SEL |= 0x0C; // P1.2 and P1.3 TA1/2 options
CCR0 = 14; // PWM Period/2
CCTL1 = OUTMOD_6; // CCR1 toggle/set
CCR1 = 9; // CCR1 PWM duty cycle at 33%
TACTL = TASSEL_2 + MC_3; // SMCLK, up-down mode
_BIS_SR(LPM0_bits); // Enter LPM0
}
|