Oggi realizzeremo un programma che permette di accendere una luce quando premiamo un pulsante e quando viene nuovamente premuto il pulsante spegne la luce, comportamento analogo a quello che si ha per un impianto di illuminazione.
Per controllare lo stato di un pulsante utilizzeremo l’istruzione digitalRead(), questa istruzione legge il valore su uno specifico pin digitale che può assumere due valori, HIGH o LOW, detto in modo meno informatico e più elettronico, verifica se su un determinato pin è applicata una tensione di +5V (definito HIGH) o 0V (definito LOW).
Occorrente
1 breadboard1 pulsante
1 diodo led
1 resistenza da 10 K Ohm
filo elettrico per breadboard
ed ovviamente Arduino
Sotto lo schema dei collegamenti
Percorso del file nell'ide di arduino: File/esempi/digital/button.
/*
Button
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 <http://www.0j0.org>
modified 30 Aug 2011
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; // pin a cui va collegato il pulsante
const int ledPin = 13; // pin a cui va collegato il led
// variables will change:
int buttonState = 0; // variabile lettura stato pulsante
void setup() {
// dichiarazione del ledPin come uscita
pinMode(ledPin, OUTPUT);
// dichiarazione del buttonPin come input
pinMode(buttonPin, INPUT);
}
void loop(){
// legge il valore del pulsante
buttonState = digitalRead(buttonPin);
// controlla se il pulsante è stato premuto
// se il pulsante è stato premuto...
if (buttonState == HIGH) {
// ...accende il led
digitalWrite(ledPin, HIGH);
}
else {
// spegne il led
digitalWrite(ledPin, LOW);
}
}
Se doveste riscontrare delle difficoltà potete commentare o scrivere sul nuovo forum
Nessun commento:
Posta un commento
Commenta