#include  "msp430x44x.h"
;******************************************************************************
;   MSP-FET430P440 Demo - Timer_A PWM TA1-2 upmode, 32kHz ACLK
;
;   Description; This program will generate a two PWM outputs on P1.2/2.0 using
;   Timer_A in an upmode.  The value in CCR0, 512, defines the period and the 
;   values in CCR1 and CCR1 the duty PWM cycles.  Using 32kHz ACLK as TACLK,
;   the timer period is 15.6ms with a 75% duty cycle on P1.2 and 25% on P2.0. 
;   Normal mode LPM3
;   ACLK = TACLK = LFXT1 = 32768, MCLK = default DCO = 1.048576MHz 
;   //*External watch crystal on XIN XOUT is required for ACLK*//	  
;
;                MSP430F449
;             -----------------
;         /|\|              XIN|-  
;          | |                 | 32kHz
;          --|RST          XOUT|-
;            |                 |
;            |             P1.2|--> CCR1 - 75% PWM
;            |             P2.0|--> CCR2 - 25% PWM
;
;   M.Buccini
;   Texas Instruments, Inc
;   January 2002
;******************************************************************************
;------------------------------------------------------------------------------ 
            ORG     01100h                  ; Program Start
;------------------------------------------------------------------------------ 
RESET       mov.w   #0A00h,SP               ; Initialize '449 stackpointer
StopWDT     mov.w   #WDTPW+WDTHOLD,&WDTCTL  ; Stop WDT
SetupTA     mov.w   #TASSEL0+TACLR,&TACTL   ; ACLK, Clear TAR
SetupC0     mov.w   #512-1,&CCR0            ; PWM Period 
SetupC1     mov.w   #OUTMOD_7,&CCTL1        ; CCR1 reset/set
            mov.w   #384,&CCR1              ; CCR1 PWM Duty Cycle	  
SetupC2     mov.w   #OUTMOD_7,&CCTL2        ; CCR2 reset/set
            mov.w   #128,&CCR2              ; CCR2 PWM duty cycle	  
SetupP1     bis.b   #004h,&P1DIR            ; P1.2 output
            bis.b   #004h,&P1SEL            ; P1.2 TA1 option select
SetupP2     bis.b   #001h,&P2DIR            ; P2.0 output
            bis.b   #001h,&P2SEL            ; P2.0 TA2 option select
            bis.w   #MC0,&TACTL             ; Start Timer_A in upmode
                                            ;					  
Mainloop    bis.w   #LPM3,SR                ; Remain in LPM3
            nop                             ; Required only for C-spy
                                            ;
;------------------------------------------------------------------------------ 
;           Interrupt Vectors Used MSP430x44x           
;------------------------------------------------------------------------------ 
            ORG     0FFFEh                  ; MSP430 RESET Vector
            DW      RESET                   ; 
            END     
