ODER-verknüpfung

Hallo,
ich bin blutiger Anfänger und habe auch vorher noch nie etwas mit C++ zutun gehabt. Ich versuche mir grade selbst ein bisschen was beizubrigen.
Folgendes Problem:

movement=digitalRead(pirSens3 == HIGH || pirSens2 == HIGH || pirSens3 == HIGH)

Ich möchte das wenn einer oder mehrere der PIRsensoren bewegung registrieren also HIGH Signal haben "movement" auch HIGH wird.

kann mir da jedemand helfen?

Gruß Fenras

digitalRead() kann nur einen Pin zu einer Zeit lesen!

movement=digitalRead(pirSens3)||digitalRead(pirSens2)||digitalRead(pirSens3);

Bitte ein C/C++ Handbuch auswendig lernen.

Tipp:
Bei solchen Abfragen, den Pin, der als häufigster HIGH sein wird, möglichst weit nach links.

Danke für den Tipp,

OK, dann funktioniert das also so nicht, was habe ich den dann für möglichkeiten?

Grundsätzlich könnte ich ja jeden Sensor einfach an den "movenemt" Pin hängen, ein Problem bekomme ich nur wenn 2 der Sensoren HIGH sind. Dann liegen ja 10V an dem "movement" Pin an.

OK, dann funktioniert das also so nicht, was habe ich den dann für möglichkeiten?

Bitte meine Antwort noch mal ausführlich überprüfen!

Ins Besondere das Code Beispiel!

"movenemt" Pin

? ? ? ? ?
Ich sehe keinen "movenemt" Pin..

Fenras:
... was habe ich den dann für möglichkeiten?

Combie zeigt bereits, wie es funktioniert.

Gruß

Gregor

oh Gott das tut mir leid, ich hab die erste Antwort wirklich nicht genau angesehen.

Vielen Dank!

Fenras:
... ich hab die erste Antwort wirklich nicht genau angesehen.

Solltest Du aber, Wir geben hier hocheffizient problemlösende Antworten :wink: :wink: :wink: 8) 8) 8)
Grüße Uwe

HIGH ist 1. Abfragen ob die Pin-Nummer 1 ist sehr wahrscheinlich nicht wahr - also 0. Damit ist es wahrscheinlich dass eine Oder-Verknüpfung auch 0 ist. Also hast du wahrscheinlich digitalRead(0). Es sei denn einer der Pins ist 1, was man nicht verwenden sollte.