Robojax

Lesson 98: Arduino 10 LED Push button Projects, Potentiometer LED Voltmeter and Traffic Light

Lesson 98: Arduino 10 LED Push button Projects, Potentiometer LED Voltmeter and Traffic Light

Please select other codes for this lecture from the links below.

Part 1: Introduction

In this lesson we learn how to use LED and Push button in this 10 LED projects. Wiring diagram is shown, code is fully explained and demonstrated with multiple change of settings for each project. We read potentiometer's voltage and display voltage by turning each LED on to represent voltages. A Simple traffic light project.
This code is part of video lecture. This project 5 code. This code is turning on an LED when a push button is pressed. When the push button is relased, the LED will turn OFF after delayLED time.


 /*
 *
 * Arduino Step by Step Course by Robojax
 * Lesson 98  https://robojax.com/course1/?vid=lecture98
 * Project 5 of 10
 * This code is turning on an LED when a push button is pressed. When the push button is relased, the LED will turn OFF after delayLED time 

* Watch full details and demonstraiton: https://youtu.be/OSwleCBlkuI
 * 
 * Start a full Arduino Step By Step course:  https://youtu.be/-6qSrDUA5a8
 * 
 ****** 10 Projects explained in this video
 * 1-LED ON OFF 
 * 2-LED ON/OFF with push button
 * 3-LED ON/OFF toggle with push button
 * 4-Fading light of LED
 * 5-Fading light of LED using push button
 * 6-See Saw with LED
 * 7-Walking Light
 * 8-Walking light with push button
 * 9-LED voltage level meter
 * 10- Arduino Traffic Light
 * 
 * 
 * What pars we need:
 * -Of course Arduino board (UNO , Nano, Mega or any)
 * -Push button switch 
 * -LED eitehr 5mm or 3mm
 * -200ohm to 1000 ohrm resistor for LED
 * -Some dupont wires to connec 
 * -If don't want to solder, then use breadboard
This video is part of Arduino Step by Step Course which starts here: https://youtu.be/-6qSrDUA5a8

  * written by Ahmad Shamshiri on Jan 30, 2022
 * in Ajax, Ontario, Canada
 * www.Robojax.com

If you found this tutorial helpful, please support me so I can continue creating 
content like this. Make a donation using PayPal by credit card https://bit.ly/donate-robojax
  
 * This code is "AS IS" without warranty or liability. Free to be used as long as you keep this note intact.* 
 * This code has been download from Robojax.com
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.

 * 
 */
const int pushButtonPin = 2;//the pin push button switch is connected to 
const int LEDPin = 3;//the pin LED is connected to
const int fadeAmount = 10;    // how many points to fade the LED by
const int fadeSpeed =5;//fade time in milliseconds. the smaller the value, the faster the fading


int brightness = 255;    // how bright the LED is
int pushButtonStatus = 0; // push value from pin 2

void setup() {
  pinMode(pushButtonPin, INPUT_PULLUP);
  pinMode(LEDPin, OUTPUT);

  Serial.begin(9600);
  Serial.println("Robojax LED with push button");

}

void loop() {
  brightness = 255;
  pushButtonStatus = digitalRead(pushButtonPin);

  if( pushButtonStatus == LOW)
  {
    while(brightness >0)
    {

     delay(100);//betwen each fade stage, wait 100 milliseconds
     analogWrite(LEDPin, brightness);      
     brightness = brightness - fadeAmount;

       delay(fadeSpeed);
        if (brightness <= 0)  {
          brightness = 0;
        }    
        
    }//while end
 
    }else{
      analogWrite(LEDPin, 0); 
    }

delay(10);
}// loop end