Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

#include <msp430g2553.

h>

void InitializeClocks(void);

void InitializePins(void);

void InitializeTimer(void);

void IniciaWDT(void);

void main(void) {

volatile unsigned int d=10;

enum {up,down} State = up;

void InitializeClocks(void);

void InitializePins(void);

void InitializeTimer(void);

void IniciaWDT(void);

while(1)

{ switch(State)

{case up:

if ((P1IN & BIT3)==0)

{ d++;

if d>=990

{ estado=down;}

break;

case down:

if ((P1IN & BIT3)==0)

{ d--;

if d<=10

{ estado=up;}

break;

} // Switch
TA0CCR1 = d;

_delay_cycles(5000);

if TA0CCR1 >= 900

{P1OUT |= BIT0;

P1OUT &= ~BIT6;

if TA0CCR1 <= 100

{P1OUT |= BIT6;

P1OUT &= ~BIT0;

} // while

} // main

void InitializeClocks(void) {

BCSCTL1 = CALBC1_1MHZ;

DCOCTL = CALDCO_1MHZ;

BCSCTL2 = ~SELS;

void InitializePins(void)

{P1OUT = BIT3;

P1DIR |= BIT6 | BIT0;

P1REN |= BIT3;

P1DIR &= ~BIT3;

P2OUT = 0;

P2SEL |= BIT2;

P2SEL2 &= ~BIT2;

P2DIR |= BIT2;

void InitializeTimer(void)

{ TA0CCR0 = 999;

TA0CCR1 = 10;
TA0CCTL1 = OUTMOD_7;

TA0CTL = TASSEL_2 + MC_1;

void IniciaWDT(void)

{ WDTCTL = WDTPW | WDTHOLD;

You might also like