diff options
Diffstat (limited to 'dissolvenza-led-distanza-ultrasuoni.ino')
-rw-r--r-- | dissolvenza-led-distanza-ultrasuoni.ino | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/dissolvenza-led-distanza-ultrasuoni.ino b/dissolvenza-led-distanza-ultrasuoni.ino new file mode 100644 index 0000000..a7be908 --- /dev/null +++ b/dissolvenza-led-distanza-ultrasuoni.ino @@ -0,0 +1,41 @@ +//HC RS04 Sensore ultrasuoni +const int triggerPort = 9; +const int echoPort = 10; +const int led = 3; + +void setup() { + +pinMode(triggerPort, OUTPUT); +pinMode(echoPort, INPUT); +pinMode(led, OUTPUT); +Serial.begin(9600); +} + +void loop() { + + +digitalWrite( triggerPort, LOW ); +//invia un impulso di 10microsec su trigger +digitalWrite( triggerPort, HIGH ); +delayMicroseconds( 10 ); +digitalWrite( triggerPort, LOW ); + +long durata = pulseIn( echoPort, HIGH ); + +long distanza = 0.034 * durata / 2; + +Serial.print("distanza: "); + +//durata in millisecondi +if( durata > 38000 ){ +Serial.println("Fuori portata "); +} +else{ +Serial.print(distanza); +Serial.println(" cm"); +int fadeValue = map(durata, 0, 38000, 0, 255) +analogWrite(led, fadeValue); +} + +delay(1000); +} |