22 March 2010

Task 31 - reversing the button operation via software

/*
/*
* Project: button_task_31
* Author: Jane-Maree Howard
* Date: Monday 22/03/2010
* Platform: Arduino 18
* Purpose: To reverse the order of the 'button' operation.

Turns on and off a light emitting diode(LED) connected to digital
pin 13, when pressing a pushbutton attached to pin 2.


The circuit:
* LED attached from pin 13 to ground
* pushbutton attached to pin 2 from +5V
* 10K resistor attached to pin 2 from ground

* Note: on most Arduinos there is already an LED
on the board attached to pin 13.

created 2005
by DojoDave
modified 17 Jun 2009
by Tom Igoe

This example code is in the public domain.
http://www.arduino.cc/en/Tutorial/Button
*/

/* Constants won't change.
They're used here to set pin numbers:*/
const int buttonPin = 2; // the number of the pushbutton pin
const int ledPin = 13; // the number of the LED pin

// Variables will change:
int buttonState = 0; // variable for reading the pushbutton status

void setup()
{
// initialize the LED pin 13 as an output:
pinMode(ledPin, OUTPUT);
// initialize the pushbutton pin 2 as an input:
pinMode(buttonPin, INPUT);
}//end setup()

void loop()
{
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);

// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH:
if (buttonState == HIGH)
{
// turn LED off:
digitalWrite(ledPin, LOW);
}// if..
else
{
// turn LED on:
digitalWrite(ledPin, HIGH);
}//..else..
}//end loop()

1 comment:

  1. All that's needed is to change the state of the LED-pin when the button is pushed:
    if (buttonState==HIGH)
    { digitalWrite(ledPin, LOW); }
    else
    { digitalWrite(ledPin, HIGH); }

    instead of HIGH else LOW in the original program.

    ReplyDelete