Frage zur Beschaltung- Ein Pin belegt, alle Eingänge auf High


hallo community,

nachdem die trockenversuche vorher recht gut funktioniert haben, kann ich gerade nicht ganz nachvollziehen, mein arduino macht.
folgende ausgangssituation:
am arduino sind die eingänge a0 und a1 mit einem signal zwischen 0 und 5v beschaltet.
an den ausgängen d5 und d11 hängt je ein mosfet. d5 gibt ein pwm signal aus, d11 high/low.

das signal eingang a0 entsteht durch einen optokoppler, welcher das hdd signal vom computer bekommt und dann eine 5v leitung schalten soll. (scheint soweit auch zu funktionieren, auch wenn der koppler bei 20ma nicht komplett durchschaltet - ich nehme an, dass das board 20ma liefert)

das signal eingang a1 kommt von einem rain-sensor - ein spanngungswert von 0 bis 5v in abhängigkeit des gemessenen widerstands der detektorplatte. (funktioniert für sich alleine auch problemlos).

nun schaue ich mir im serial monitor die eingänge und stelle fest, dass sobald die 5v vom rain sensor a1 anliegen, alle anderen eingangänge ebenfalls zwischen 900 und 1023 liegen. berühre ich einen benachbarten pin, sinken alle eingänge ohne signal wieder auf einen low wert.
ziehe ich den stecker von a1 ab, ist auch alles wieder auf low  bzw. läuft in die richtung.

findet jemand einen fehler in meiner schaltung, der den globalen high-level verursachen könnte?
könnte ich das hdd signal auch direkt auf a0 geben (es hängt alles der gleichen stromquelle  / pc-nt)?

vielen dank im voraus
gruß
lj

du bringst da analog und digital durcheinander. wenn du nur ein high/low signal hast, wieso misst du dann analog?

der ausgang des optokopplers ist keine diode, sondern ein transistor. der normal in einer emitterschaltung betrieben wird. du musst den internen pullup des eingangs aktivieren. dann ist der eingang normal high und wenn der optokoppler schaltet wird er low.

also optokoppler-emitter auf masse. kollektor auf den eingang. dann per pinmode() input_pullup aktivieren und mit digitalread() abfragen

so:
http://www.siongboon.com/projects/2006-06-19_switch/opto-coupler.gif
nur dass du ausgang 5v hast und der widerstand bei dir intern im prozessor ist. du kannst auch einen externen pullup nehmen und input verwenden


zum schalten reichen übrigens schon 1-10ma. vorwiderstand der led nicht vergessen


Arduino Forum > International > Deutsch (Moderator: uwefed) > Frage zur Beschaltung- Ein Pin belegt, alle Eingänge auf High


arduino

Comments

Popular posts from this blog

Error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode - Raspberry Pi Forums

class MPU6050 has no member named begin

missing filename after '-o'