Introduction: Arduino Tutorial: Flicker a LED

Tired of all those other instructables about how to blink a LED? well how about flickering a LED? eh? there is a ible all about flickering a LED.

Step 1: Wiring

Before we program the arduino we need to get everthing setup.

A) Plug in your arduino to the computer Via USB cable.
B) Add led positive lead to pin 10 on digitial, then with negitive lead to the GND (ground) pin also on digitial
C) Run Arduino IDE software.
D) Go to next step for code.

using the picture below wire your arduino (incase you dont understand what i am getting at here)

Step 2: Ze Code

to make the led flicker you are first going to need the software to program the chip. go to arduino.cc for a full program and other examples. the code you see here should be copied and pasted into the IDE.

int ledPin = 10;
byte flicker[] = {180, 30, 89, 23, 255, 200, 90, 150, 60, 230, 180, 45, 90};

void setup()
{
pinMode(ledPin, OUTPUT);
}

void loop()
{
for(int i=0; i,7; i++)
{
analogWrite(ledPin, flicker[i]);
delay(2000);
}
}

Now just click the "upload" button and in a few seconds your arduino will be running the code. Ok in the next step I will explain the code.

Step 3: The Finial Product.

see how it flickers? thats basically what the code does!

Got questions? comments? concerns? list below!

Video
can not parse options from: type="application/x-shockwave-flash" width="400" height="300" data="http://www.flickr.com/apps/video/stewart.swf?v=71377" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"> <param name="flashvars" value="intl_lang=en-us&photo_secret=d3eedd10d0&photo_id=3521110370"></param> <param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=71377"></param> <param name="bgcolor" value="#000000"></param> <param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=71377" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&photo_secret=d3eedd10d0&photo_id=3521110370" height="300" width="400"></embed></object>, {width:425, height:350}

Comments

author
Jason+Diaz made it!(author)2014-01-11

I know this is really old, but I found a nice trick using digital pin 13 and no PWM, you will need to download the TrueRandom library:

#include <TrueRandom.h>

const int ledPin = 13; // the number of the LED pin

boolean toggle = true;

void setup() {

// set the digital pin as output:

pinMode(ledPin, OUTPUT);

}

void loop()

{

//rand represents a random delay time between toggling on/off

//Larger numbers means more "flicker" here

int rand = TrueRandom.random(100,10000);

//This code turns the LED on or off depending on our toggle value

if(toggle){

digitalWrite(ledPin, HIGH);

}

else{

digitalWrite(ledPin, LOW);

}

//toggle the LED on or off

toggle = toggle?false:true;

delayMicroseconds(rand);

}

author
D5quar3 made it!(author)2010-06-19

This code is a lot easier it might not look as nice but i uploaded the code and it didn't work here is mine int ledPin = 13; // LED connected to digital pin 13 // The setup() method runs once, when the sketch starts void setup() { // initialize the digital pin as an output: pinMode(ledPin, OUTPUT); } // the loop() method runs over and over again, // as long as the Arduino has power void loop() { digitalWrite(ledPin, HIGH); // set the LED on delay(35); // wait a thirty-fifth of a second digitalWrite(ledPin, LOW); // set the LED off delay(35); // wait a thirty-fifth of a second }

author
Microbe made it!(author)2011-05-02

@D5quar3, but your code is only flashing. The original does work and although the randomness could be improved it does "flicker"

author
oweng4000 made it!(author)2010-07-09

#include void setup(){ } void loop(){ analogWrite(9, TrueRandom.random(0,255)); delay(10); } this is the code I used it requires the TrueRandom library(http://code.google.com/p/tinkerit/wiki/TrueRandom), but the result is rather convincing.

author
gotcha99 made it!(author)2009-12-23

Hey there from Germany.
I've got a problem.
After about 3 seconds the LED stops lighting.
Then after about ten seconds it lights again for about 2 minutes.
After that, the same thing starts again!

I'm using an 220 Ohm resistor to not to destroy the LED.
I used the code from above without editing it (only the delay = 75ms).

Can anybody help me???
Thanks, gotcha99

author
d-lite made it!(author)2009-05-11

Are you putting the LED directly across the 5-volt output? Hopefully you are lucky enough for the LED to blow before the Arduino gets wrecked!

author
TXTCLA55 made it!(author)2009-05-11

dont worry. just make sure u use a 5 volt led or a resistor.

author
ReCreate made it!(author)2009-06-26

there is no such 5 volt led...any 5v leds just have a tiny resistor in them...

author
Derin made it!(author)2009-05-23

It would be better to use 13 since there is a LED on the board for Duemilanove and Diecimila.I use that when I need to led there be light.

author
TXTCLA55 made it!(author)2009-05-24

No. Pin 13 may be a better choice, and you can edit the code if you like so the led can flash through there, but if you use a 1k resisor before the LED on pin 11 you will be fine.

author
ajitam made it!(author)2009-05-11

yeah I think 13 pin is more wise choise

author
qs made it!(author)2009-05-11

The sketch will not run properly on pin 13 - it needs a PWM port for the 'flicker'. Make sure you put a 180-330 ohm resistor before the LED to protect it and the Arduino, which is only rated for 40mA before it's zapped!

author
ajitam made it!(author)2009-05-11

if I understand correctly this is because we putting analog output ?

author
TXTCLA55 made it!(author)2009-05-11

correct. but the analog is actually a list of different frequencies rather than physical input.

author
TXTCLA55 made it!(author)2009-05-11

thanks for clearing this up. I first tried the sketch with a 1.5 volt LED....sparks flew! The one in the pictures is actualy rated for 5 volts so it needs no resistor.

About This Instructable

18,388views

29favorites

License:

More by TXTCLA55:Industrial Pi CaseThe Monobox AmpModern Reclaimed Wood Coffee Table (Pallet/Skid Table)
Add instructable to: