Codice e spiegazione

Il seguente codice permette al sensore di percepire quando un oggetto gli passa davanti e addizionare 1 ogni volta che un nuovo oggetto passa.

Dopo aver dichiarato le variabili “state” e “laststate” con valore logico basso, il sensore quando rileva un oggetto porta la variabile “state” a livello logico alto e lascia invariata la variabile “laststate”.Ogni volta che ciò accade viene addizionato 1 al conteggio visibile sul display.

CODICE:

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
int state=LOW;
int lastState=LOW;
int count=0;

void setup(){

lcd.begin(16, 2);

Serial.begin(9600);
pinMode(8, INPUT);
state=digitalRead(8);
}
void loop(){
if (state==HIGH && lastState==LOW){
count++;
delay (100);
Serial.println(count);
lcd.setCursor(0, 0);
lcd.print(“Num. auto: “); 

lcd.setCursor(0, 1);
lcd.print(count);

}
lastState=state;
state=digitalRead(8);
}

 

 

 

Leave a Reply

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *