This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

gradually increasing PWM



Hi,

       Here is the code of pwm generation, but i want gradual increase in pwm and it should get out on LED connected to port 3.7, In code i have used external oscillator of 32KHz , what modifications should i do for that???? please help me :((

#include<msp430x21x2.h>

 

 

 

 

 

 

 

 

#include

 

 

#define

 

 

void timer_init();

pwmpr 511
<intrinsics.h>

 

 

 

 

volatileunsigned int i;

void

 

 

main()

{ WDTCTL = WDTPW + WDTHOLD;

 

BCSCTL3 |= LFXT1S0;

// + LFXT1OF; // LFXT1S1 = 3-16Mhz BCSCTL1|=DIVA_3;

BCSCTL3|=XCAP_2;

 

 

 

do

{IFG1 &= ~OFIFG;

 

 

 

// Clear OSCFault flag

 

 

 

for (i = 0xFF; i > 0; i--);

// Time for flag to set

 

}

 

while (IFG1 & OFIFG);

// OSCFault flag still set?

BCSCTL2 |= SELM_3;

 

 

// MCLK = LFXT1 (safe)

P1DIR|=0X10;

P2DIR|=0X02;

P3DIR|=0X80;

 P1SEL|= 0X10;

P2SEL|= 0X02;

P3SEL|= 0X80;

TA1CCR0 = pwmpr;

TA1CCTL1 = OUTMOD_7;

// + CCIE; //TA1CCR1=start1; // + CM_2 + SCCI + SCS;

TA1CTL = TASSEL_1 + MC_1 + TAIE;

// + TACLR;+ TAIFG; + ID_3 ; ACLK, up

__bis_SR_register(GIE);

 

 

 

//_EINT(); CPU off

}

 

//**************************************************************

#pragma

 

 

vector= TIMER1_A1_VECTOR

__interrupt

void TIMER1_A1(void)

{

unsigned int j=50000;

 

 

if (TA1IV==0X0a)

TA1CCR1+=10;

 

 

{

 

do

j--;}

while (j!=0);

}

 

 

 

 

**Attention** This is a public forum