real indian maa chele sex video on anyxvideos.com bbc riding dasi village bhabi bath xxx coti golpo smackdown victoria ngentot indo xnxx-br.com 3gp www grannysexvido com

Un po’ di teoria

Il codice accende il Led quando è premuto il pulsante ( MicroSwitch ) e lo mantiene acceso dopo che lo si rilascia.

Questi piccoli pulsante sono dispositivi molto semplici: due parti di metallo separate da una molla. Quando premete il pulsante, i due contatti si toccano e l’elettricità può fluire. Questo suona facile, ma nella vita reale il collegamento non è così perfetto, specie quando il pulsante non è premuto completamente, e genera dei segnali spuri detti simbalzi ( Bouncing )

Quando il pulsante produce questi segnali, Arduino vede una sequenza molto rapida di segnali acceso-spento. Per evitarlo sono state sviluppate molte tecniche, ma in questo semplice codice ho notato che normalmente basta aggiungere un ritardo di 10/50 millisecondi quando il codice rileva una transizione.

L’esempio sottostante mostra il codice.

Codice ( Sketch ) Accensione e Cambio luminosità ( Brightness )

Esempio: Accende il Led quando è premuto il pulsante e lo mantiene acceso dopo che lo si rilascia, includendo un semplice antirimbalzo ( de-bouncing )

{codecitation class=”brush:cpp”}

#define Led 9     // Il Pin del Led
#define Pulsante 7  // Pin di Input del pulsante

int Valore = 0;      // Conserva lo stato del pin input
int Vecchio_Valore = 0;  // Conserva il valore precedente di “Valore”
int Stato = 0;    // 0 = Led spento mentre 1 = Led acceso

int brightness = 128;        // Conserva il valore della luminosità
unsigned long startTime = 0; // quando è cominciata la pressione ?

void setup() {
pinMode(Led, OUTPUT);   // Indica ad Arduino che Led è un Output
pinMode(Pulsante, INPUT); // E che Pulsante è un Input
}

void loop() {

Valore = digitalRead(Pulsante); // Legge il valore dell’input e lo conserva

if ((Valore == HIGH) && (Vecchio_Valore == LOW)) // Controlla se è venuta una transizione
{

Stato = 1 – Stato; // Cambio lo stato da spento ad acceso o viceversa

startTime = millis(); // millis() è l’orologio di Arduno che restituisce quanti millisecondi sono passati da quando è stata resettata la scheda.

// ( Questa riga ricorda quando è stato premuto il pulsante l’ultima volta )
delay(10);
}

if ((Valore == HIGH) && (Vecchio_Valore == HIGH)) // Verifica che il pulsante sia ancora premuto
{

if (Stato == 1 && (millis() – startTime) > 500) // Se il pulsante è premuto per più di 500Ms
{

brightness++; // Incrementa la luminosità di 1
delay(10);    // Ritardo per evitare che la luminosità aumenti troppo rapidamente

if (brightness > 255) { // 255 è la luminosità massima

brightness = 0; // Se va oltre 255 torna a 0
}
}
}

Vecchio_Valore = Valore; // Memorizza il valore precedente di ” Valore ”

if (Stato == 1)
{
analogWrite(Led, brightness); // Accende il led al livello corrente di luminosità
}
else
{
analogWrite(Led, 0); // Spegne il Led
}
}

{/codecitation}

Share This