summaryrefslogtreecommitdiff
path: root/dissolvenza-led-distanza-ultrasuoni.ino
diff options
context:
space:
mode:
authorLuca Tringali <tringalinvent@libero.it>2019-03-11 22:38:22 +0100
committerLuca Tringali <tringalinvent@libero.it>2019-03-11 22:38:22 +0100
commit299ee1066f15506da34beeba6e90a44891780734 (patch)
tree3ae1e21c23b917707bba2fb5589d62d54fe034bc /dissolvenza-led-distanza-ultrasuoni.ino
First commit
Diffstat (limited to 'dissolvenza-led-distanza-ultrasuoni.ino')
-rw-r--r--dissolvenza-led-distanza-ultrasuoni.ino41
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);
+}