Circuit 1: Blinking an LED


SparkFun Inventor's Kit
Example sketch 01
Modified for Energia


  Turn an LED on for one second, off for one second,
  and repeat forever.

Hardware connections:

  An MSP430G2 LaunchPad will already have an LED and resistor connected to
  pin 14, so you may not need any additional circuitry. For any LaunchPad 
  you can use the RED_LED or GREEN_LED variable name, which will be mapped 
  to the correct LED pin on the LaunchPad in Energia. 

  But if you'd like to connect a second LED to pin 14, or use
  a different pin, follow these steps:

    Connect the positive side of your LED (longer leg) to LaunchPad
    digital pin 14 (or another digital pin, don't forget to change
    the code to match).
    Connect the negative side of your LED (shorter leg) to a 
    330 Ohm resistor (orange-orange-brown). Connect the other side
    of the resistor to ground.

    pin 14 _____ + LED - _____ 330 Ohm _____ GND
    (We always use resistors between the LaunchPad and and LEDs
    to keep the LEDs from burning out due to too much current.)

This sketch was written by SparkFun Electronics,
with lots of help from the Arduino community, 
and modified by the Energia community for compatibility.
This code is completely free for any use.
Visit for SIK information.
Visit to learn about the Arduino.
Visit to learn more about Energia.

Version 2.0 6/2012 MDG

// Welcome to Energia!

// If you're brand-new to this, there will be some new things to
// learn, but we'll jump right in and explain things as we go.

// The LaunchPad is a tiny computer that runs programs called
// "sketches". These are text files written using instructions
// the computer understands. You're reading a sketch right now.

// Sketches have computer code in them, but also (hopefully)
// "comments" that explain what the code does. Comments and code
// will have different colors in the editor so you can tell them
// apart.

// This is a comment - anything on a line after "//" is ignored
// by the computer.

/* This is also a comment - this one can be multi-line, but it
must start and end with these characters */

// A "function" is a named block of code, that performs a specific,
// well, function. Many useful functions are already built-in to
// Energia; others you'll name and write yourself for your
// own purposes.

// All Energia sketches MUST have two specific functions, named
// "setup()" and "loop()". The LaunchPad runs these functions
// automatically when it starts up or if you press the reset
// button. You'll typically fill these function "shells" with your
// own code. Let's get started!

// The setup() function runs once when the sketch starts.
// You'll use it for things you need to do first, or only once:

void setup()
  // The LaunchPad has multiple digital input/output pins. These pins
  // can be configured as either inputs or outputs. We set this
  // up with a built-in function called pinMode().

  // The pinMode() function takes two values, which you type in
  // the parenthesis after the function name. The first value is
  // a pin number, the second value is the word INPUT or OUTPUT.
  // Here we'll set up pin 14 (the one connected to a LED) to be
  // an output. We're doing this because we need to send voltage
  // "out" of the LaunchPad to the LED.

  pinMode(14, OUTPUT);
  // Some pins are also mapped to variable names to make it easier.
  // You can do a similar pinMode() call to the green LED like this:
  // pinMode(GREEN_LED, OUTPUT);

  // By the way, the Energia offers many useful built-in functions
  // like this one. You can find information on all of them at the
  // Energia website:

// After setup() finishes, the loop() function runs over and over
// again, forever (or until you turn off or reset the LaunchPad).
// This is usually where the bulk of your program lives:

void loop()
  // The digital pins on your LaunchPad are great at inputting
  // and outputting on/off, or "digital" signals. These signals
  // will always be either ~3 Volts (which we call "HIGH"), or
  // 0 Volts (which we call "LOW").

  // Because we have an LED connected to pin 14, if we make that
  // output HIGH, the LED will get voltage and light up. If we make
  // that output LOW, the LED will have no voltage and turn off.

  // digitalWrite() is the built-in function we use to make an
  // output pin HIGH or LOW. It takes two values; a pin number,
  // followed by the word HIGH or LOW:

  digitalWrite(14, HIGH);   // Turn on the LED

  // delay() is a function that pauses for a given amount of time.
  // It takes one value, the amount of time to wait, measured in
  // milliseconds. There are 1000 milliseconds in a second, so if
  // you delay(1000), it will pause for exactly one second:
  delay(1000);              // Wait for one second
  digitalWrite(14, LOW);    // Turn off the LED
  delay(1000);              // Wait for one second

  // All together, the above code turns the LED on, waits one
  // second, turns it off, and waits another second.

  // When the computer gets to the end of the loop() function,
  // it starts loop() over again. So this program will continue
  // blinking the LED on and off!

  // Try changing the 1000 in the above delay() functions to
  // different numbers and see how it affects the timing. Smaller
  // values will make the loop run faster. (Why?)



Reference Home || Libraries Home