PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Uno mit US Modul HC-SR04 an anderen Pins



Wolle62
02.09.2018, 14:56
Werte Gemeinde,
ich bin noch beim lernen und habe schon viele kleine Übungen erfolgreich mit dem Uno gemacht.
Nun habe ich das Ultraschallmodul HC-SR04 bei den Ohren.

Verwende ich das Beispielsketch dafür (Trigger an Pin7 und Echo an Pin6) klappt alles super.
Nun wollte ich das Modul an andere Pins anschließen (Trigger an Pin17 und Echo an Pin16),

Dazu las ich im Netz :

Der Arduino hat 20 ( zwanzig ) Digitale Ein/Ausgänge. Die Pins 0 bis 13 und die Analogen Pins A0 bis A5, die als Digitale Ein/Ausgänge verwendet werden können. Wenn Du einen analogen Eingang mit pinMode als digitalen Ein/Ausgang definierst werden aus A0 bis A5 die Pins 14 bis 19.

Leider läuft der selbe Code nun nicht mehr. Was übersehe ich hier? Haben die Pins 16 und 17
doch andere Eigenschaften als Pin 6 und 7 ?


int trigger=7; //Pin für den Trigger
int echo=6; //Pin für das Echo
long dauer=0;
long entfernung=0;

void setup() {

// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT); //Die eingebaute LED soll was anzeigen
pinMode(trigger, OUTPUT); //Trigger Pin auf Ausgang
pinMode(echo, INPUT); //Echo Pin auf Eingang

}

void loop() {

digitalWrite(trigger, LOW); //Den Trigger Pin erst auf Low
delay(5); //kurz warten
digitalWrite(trigger, HIGH); //Den Trigger Pin auf High
delay(10); //kurz warten
digitalWrite(trigger, LOW); //Den Trigger Pin wieder auf Low
dauer = pulseIn(echo, HIGH); //Echo Pin wartet, das Pin High wird > Schallimpuls ist zurück
entfernung = (dauer/2) * 0.03432; //Entfernungsberechnung in cm

delay(300);

if(entfernung <=10)
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
else
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
return(entfernung);

}



Kurz noch der Beispielcode dazu
DANKE!

HaWe
02.09.2018, 15:41
hallo,
probier doch mal diesen Code ggf. mit anderen Pins:
https://www.roboternetz.de/community/threads/72356-Arduino-C-Sketch-HC-SR04-mit-Arduino-%28AVR%29

PS
PIN 16 und 17 ?
beim Uno sind das analoge Pins, die nicht unbedingt wie digitale funktionieren (lesen u.U ja, aber nicht unbedingt schreiben),
nur beim Mega sind sie digital, allerdings für spezielle Zwecke vorgesehen.

Wolle62
02.09.2018, 16:50
Weia, ichhabe mich auf dem Breadboard vertan. Das geht doch so.
Man schaut 10 mal hin und sieht den Fehler nicht.
Ich habe alles runtergeschmissen und neu verdrahtet und schwupp gehts...

Danke für den Link! Das teste ich bei der Gelegenheit auch gleich!

HaWe
02.09.2018, 17:24
saperlott, auch wieder was gelernt!

Moppi
02.09.2018, 18:01
Wenn doch alles so einfach wäre! :-) Aber Wolle62, Du bist nicht alleine! Habe letztens auch einen SD-Kartenleser ausprobiert und funktionierte nicht. Auch mehrmals kontrolliert, trotzdem war ein Draht falsch.