msp430 2 PWM & 2 Adc
msp430 2 PWM & 2 Adc
#include <msp430g2452.h>
volatile int res [2]={0};
long c=0,prom=0, suma=0;
long c1=0,prom1=0, suma1=0;
void main(void){
WDTCTL = WDTPW + WDTHOLD; // watchdog timer setup
if (CALBC1_1MHZ ==0xFF || CALDCO_1MHZ == 0xFF){
while(1); // If cal constants erased,
} // trap CPU!!
BCSCTL1 = CALBC1_1MHZ; // Set range
DCOCTL = CALDCO_1MHZ; // Set DCO step + modulation
P1DIR |= 0x14; // P1.2 &1.4= output
P1SEL |= 0X14; // P1.2&1.4 = TA0.1& TA0.2 output
P1SEL2 |=0X10;
CCR0 = 1024-1;
TACCTL1 = OUTMOD_7;
TACCTL2 = OUTMOD_7;
TACTL = TASSEL_2 + MC_1;
// PWM Period
// TACCR1 reset/set
// TA0CCR2 reset/set
// SMCLK, upmode
prom1=0;
suma1=0;
c1=0;}
}
}
#pragma vector=ADC10_VECTOR
__interrupt void ADC10_ISR(void) {
__bic_SR_register_on_exit(CPUOFF);}