
// blink6.c

// TI Launchpad
// blink 2 LEDs 

#include <msp430g2231.h>

#define LED1 BIT0
#define LED2 BIT6
#define LED_DIR P1DIR
#define LED_OUT P1OUT
#define DELAY1 0x0300
#define DELAY2 0x9999

int main(void) {
  // avoid loop optimizing away
  volatile int i;

  // stop watchdog timer
  WDTCTL = WDTPW | WDTHOLD;

  // Set LED pins as outputs
  LED_DIR |= LED1 + LED2;
  // Turn on both LEDs
  LED_OUT |= LED1 + LED2;
  // Toggle both LEDs
  LED_OUT ^= (LED1 + LED2);

  // loop forever
  for (;;) {
    // Toggle First LED
    LED_OUT ^= LED1;
    // delay for a while
    for (i = 0; i < DELAY1; i++);
    // Toggle First LED
    LED_OUT ^= LED1;
    // delay for a while
    for (i = 0; i < DELAY2; i++);
    // Toggle Second LED
    LED_OUT ^= LED2;
    // delay for a while
    for (i = 0; i < DELAY1; i++);
    // Toggle Second LED
    LED_OUT ^= LED2;
    // delay for a while
    for (i = 0; i < DELAY2; i++);
  }
}

