Atmega8 vertauscht Bits(?)

OP #405719
Lesenswert?
• ▲
▼
Hey Leute,
jetzt bin ich doch wieder etwas verzweifelt... Nachdem mein letztes
mysteriöses Problem simpel gelöst wurde, hoffe ich mal, dass das beim
2. auch so ist, allerdings komm ich nicht ganz von selbst drauf.

Ich habe einen Atmega8 mit dem Einsteigerboard aus dem Shop hier. So
wie ich das verstanden hab, muss man, um z.B. eine LED an einem Ausgang
anzumachen, das entsprechende Bit am Pin von 1 auf 0 setzen und sie
leuchtet. So verhält sich auf dem Board auch die Beispielled. Wenn man
einen Taster an einem Eingang hat (verbindet Masse und nen Eingangspin)
sollte ja bei gedrücktem Taster das entsprechende Bit ebenfalls von 1
auf 0 springen. Der AVR-Simulator verhält sich jedenfalls so.

Mein Problem: Alles, was ich angeschlossen hab, verhält sich genau
andersrum: Schließe ich eine LED an einen Ausgang, geht sie bei 1 an
und bei 0 aus. Ein Taster erzeugt gedrückt eine 1, losgelassen eine 0.
Besonders paradox: schließe ich eine 2. LED an die Beispiel-LED, geht
die Beispiel-LED bei 1 aus, meine 2. geht dafür bei 1 an (bei 0 genau
umgekehrt).
Was könnte ich da falsch machen? :( Würde mich echt über kleine oder
große Hinweise freuen.
#405720
Lesenswert?
• ▲
▼
Hallo,

ohne das Board zu kennen: wie sieht die Hardware aus?
Schaltet der Taster gegen GND oder VCC?
Ist die LED gegen GND oder VCC geschaltet?
Je nach Anschlussart hast du das beschriebene Verhalten. Siehe dazu für
die Eingänge/Taster z.B. hier:
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Tasten_und_Schalter
Für die Ausgänge verhält es sich analog. Wenn dein uC 1 liefert (=VCC)
und du den Verbraucher gegen VCC angeschlossen hast, fließt kein Strom.
Ist er hingegen gegen GND geschaltet, fließt Strom => LED leuchtet. Wenn
dein uC eine 0 liefert (=GND) und dein Verbraucher ist gegen VCC
angeschlossen, fließt Strom => LED leuchtet. Ist er hingegen gegen GND
geschaltet, fließt kein Strom.

Hans
#405722
Lesenswert?
• ▲
▼
> Alles, was ich angeschlossen hab, verhält sich genau
> andersrum:

Dann hast du nicht wirklich verstanden, wie die Beispielled
angeschlossen war.
Studier den Schaltplan! Wenn du keinen hast: Studier die
Leiterführung auf dem Board.

Du wirst feststellen, dass im Falle der Beispielled es
vom Ausgang des Mega8 über die Led nach + geht.
Deine eigenen Leds jedoch sind nach - verkabelt.
OP #405723
Lesenswert?
• ▲
▼
...Und wieder war es so eine verhältnismäßig einfache Erklärung, auf die
nich nie allein gekommen wär :D Danke Leute, aber ich muss noch viel
lernen...
Ich hab mir das mit meinen bescheidenen Elektronikkentnissen so
vorgestellt, als ob sozusagen im µC eine art Schalter ist, der einfach
nur nen Kontakt schließt und entweder 5V anschaltet oder den Stromkreis
unterbricht. Genau das Gleiche bei den Inputs...
Es war tatsächlich so, dass ich gegen GND geschaltet habe.
#405724
Lesenswert?
• ▲
▼
> Ich hab mir das mit meinen bescheidenen Elektronikkentnissen so
> vorgestellt, als ob sozusagen im µC eine art Schalter ist,

Diese Modell ist auch nicht schlecht als Gedankenmodell.
Nur sieht der Schalter in etwa so aus:


  +  ----------------+
                     |
                     |
                     o
                       \
                        \
                         ------- Pin an dem du deine Schaltung
                                 anhängst

                     o
                     |
                     |
  - -----------------+

Der Schalter schaltet also den Ausgangspin wahlweise an +
oder an -

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.