-         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Ausgang GND oder VCC?

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    03.12.2008
    Alter
    23
    Beiträge
    438

    Ausgang GND oder VCC?

    Anzeige

    Hi,
    Ich hab wiedereinmal eine Frage:
    Wenn ich eine LED habe und diese an einem PIN anschliese, welchen ich auf Ausgang geschaltet habe muss ich diese dann mit VCC vom mC verbinden oder von der Batterie?
    Und wenn ich z.B. ein Taster an einen PIN anschliesse welchen ich auf Eingang programmiert habe, muss ich dann den Taster mit GND oder mit VCC verbinden?
    Ich hab mir mal die Grundschaltung des ATmega32 angesehen und dort wird der Taster mit GND der Batterie verbunden.

    Grüsse!
    Wer keine Illusionen mehr hat, wird weiterhin existieren, aber aufgefhört haben zu leben.
    (Leonard da Vinci)

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    35
    Beiträge
    1.987
    Wie du das anschliesst, kommt eben drauf an...

    Wenn die Batterie den Controller (direkt) versorgt, isses egal, welches VCC verwendet wird, da beide gleich sind. Da die LED ja sowieso mit Vorwiderstand läuft (bzw. laufen sollte) ist es auch egal, wenn zwischen Batterie und Controller noch ein Spannungsregler ist... Solange du an den beiden LED-Anschlüssen ne Spannungsdifferenz mit richtiger Polung aufbauen kannst => Stromfluss => LED leuchtet.

    Beim Taster ist auch die Frage, wie du abfragen willst.
    Du kannst so schalten, dass der Taster beim Drücken von VCC nach GND wechselt (Abfrage auf 0 im Programm) oder andersrum (auf 1 abfragen).

    Ich mach das mit einzelnen Tastern immer so, dass ich den Pin mit dem internen Pull-Up auf High ziehe. Durch Drücken des Tasters wird der Pin dann auf Masse gezogen.
    Vorteil: Ausser dem Taster brauche ich keine weitere Hardware wie Pull-Ups/-Downs etc.
    Nachteil: Man muss umdenken, da im Programm 1 = Aus und 0 = An ist.
    Aber in C dank der #defines kein Problem.
    #ifndef MfG
    #define MfG

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    03.12.2008
    Alter
    23
    Beiträge
    438
    Hi, Danke für die Antwort!
    Also wenn ich einen Pin auf High schalte, dann ist der PIN auf Masse und wenn ich ihn auf Low schalte ist er auf VCC? Ist das so richtig?

    Und wenn einen Taster drücken, dann wird beim PIN ja True angezeigt und darauf auf Masse gezogen?

    Also ich hab das RN-Control, sollte ich dort vielleicht die 3 Vcc an der seite nutzen? Oder soll ich dort gleich direkt an der Batterie anschliessen?

    Grüsse!
    Wer keine Illusionen mehr hat, wird weiterhin existieren, aber aufgefhört haben zu leben.
    (Leonard da Vinci)

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    35
    Beiträge
    1.987
    Nene. Low = GND = Masse, High = VCC = 5V bzw. 3.3V.
    Wenn du den Taster drückst, schaltest du in den jeweils anderen Zustand.
    Also wenn du den Pin intern auf High ziehst, muss der Schalter den beim Drücken nach Masse (Low) ziehen, sonst passiert nichts.

    Ob "True" angezeigt wird, kommt drauf an wie du abfragst.
    Wenn du dir das PIN-Register anschaust, steht beim jeweiligen Pin ne 1 drin, wenn 5V/High anliegen, bzw. 0 wenn Low/Masse anliegt.

    if (PINA & (1 << PINA4)) liefert dir True, wenn an PinA4 high-Pegel anliegt.
    if (!(PINA & (1 << PINA4))) liefert dir True, wenn an PinA4 low-Pegel anliegt.

    Wenns um Taster geht, würd ich maximal die VCC verwenden. Wenn der Taster direkt die Batteriespannung durchschaltet (12V?), wär das ungesund für den AVR.

    Bei LEDs ist es wie gesagt egal, da hier nur der Stromfluss wichtig ist (wird begrenzt durch den Widerstand).
    #ifndef MfG
    #define MfG

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    03.12.2008
    Alter
    23
    Beiträge
    438
    Aha!
    OK!
    Also muss ich den Taster immer an VCC anschliessen? Oder kann ich den theoretisch auch an GND anschliessen, dann verändert ich einfach der Wahr und Falsch Wert?

    Grüsse!
    Dan
    Wer keine Illusionen mehr hat, wird weiterhin existieren, aber aufgefhört haben zu leben.
    (Leonard da Vinci)

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    35
    Beiträge
    1.987
    Genau das war ja das was ich ganz oben beschrieben hab.
    Der AVR zieht den Pin mit seinem eigenen Pull-Up auf 5V (High), beim Drücken zieht der Taster/Schalter den Pin auf Masse runter.

    Wie rum ist einfach Geschmackssache bzw. wie's halt von der Anwendung grad besser passt.
    #ifndef MfG
    #define MfG

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    03.12.2008
    Alter
    23
    Beiträge
    438
    OK!
    Danke für deine Hilfe!

    Grüsse!
    Wer keine Illusionen mehr hat, wird weiterhin existieren, aber aufgefhört haben zu leben.
    (Leonard da Vinci)

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    03.12.2008
    Alter
    23
    Beiträge
    438
    Hi,
    Ich hab jetzt gleich noch eine Frage:
    Wenn ich jetzt z.B. Ein LDR habe.
    Ich schliesse es an einen Eingang an und an Vcc.
    Also wenn jetzt Licht aufs LDR kommt dann kommt ja sozusagen keine Spannung in den Eingang, wenn es jetzt aber dunkel ist kommt Spannung in den Eingang, dann hat das ja eigenleintlich gar nichts mit GND zu tun? Dann heissts einfach VCC oder kein VCC und nicht VCC oder GND.

    Wenn ich jetzt das oben beschriebene Beispiel kurz mal so schreiben würde:
    if (PINA & (1 << PINA4))
    {x}
    Dann wird Block x asugeführt sobald kein Licht auf das LDR scheint? Denn wenn Spannung kommt wird ja der Wert WAHR geliegert.

    Würde das alles jetzt so stimmen?

    Grüsse!
    Wer keine Illusionen mehr hat, wird weiterhin existieren, aber aufgefhört haben zu leben.
    (Leonard da Vinci)

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    22.11.2005
    Ort
    Braunschweig
    Alter
    41
    Beiträge
    685
    Moin!
    Ein LDR ist ein lichtabhängiger Widerstand, den mußt Du als Spannungsteiler mit einem zweiten Widerstand beschalten, also z.B. Vcc-LDR-Widerstand-GND und zwischen demLDR und dem Widerstand zum Microcontroller. Siehe auch Ohm'sches Gesetz
    MfG
    Volker
    Meine kleine Seite
    http://home.arcor.de/volker.klaffehn
    http://vklaffehn.funpic.de/cms
    neuer Avatar, meine geheime Identität

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    03.12.2008
    Alter
    23
    Beiträge
    438
    OK!
    Das selbe kann ich warscheinlich auch mit Fototransistoren machen...
    Reicht da ein 100k Ohm wiederstand? Ich verwende die Fototransistoren von Conrad:
    Art.Nr.: 153805
    Also ich schätze mal das hängt auch noch mit der Beleuchtung ab, wenn ich die Fototransistoren als Spurensensoren benutze...
    Der Asuro hat 20k Ohm Widerstände... aber der hat eine super starke LED, dann werde ichs mal mit 100k Ohm Widerstände ausprobieren....
    Grüsse!
    Wer keine Illusionen mehr hat, wird weiterhin existieren, aber aufgefhört haben zu leben.
    (Leonard da Vinci)

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •