mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik STK500 komische Output-Probleme


Autor: TB (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe mir das STK500 gekauft und habe beim Programmieren eines 
ATMega8 komische Ergebnisse erziehlt.
Der Simple Befehl DDRB |= (1<<PB0); sorgt dafür, dass die entsprechende 
LED aufleuchtet. Wenn ich die LED per PORTB |= (1<<PB0); zum leuchten 
bringen will, geht sie aus, und per PORTB &= ~(1<<PB0); geht sie wieder 
an.

Irgendwie scheint hier etwas nicht zu stimmen.

Hat vielleicht jemand eine Idee woher der Fehler stammen könnte?


Viele Grüße und vielen Dank

Autor: Qwertz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Der Simple Befehl DDRB |= (1<<PB0); sorgt dafür, dass die entsprechende
>LED aufleuchtet. Wenn ich die LED per PORTB |= (1<<PB0); zum leuchten
>bringen will, geht sie aus, und per PORTB &= ~(1<<PB0); geht sie wieder
>an.

So soll es sein!

>Irgendwie scheint hier etwas nicht zu stimmen.

Und was?

>Hat vielleicht jemand eine Idee woher der Fehler stammen könnte?

Welcher Fehler?

Ich rate mal: Du erwartest, das eine 1 die LED zum leuchten bringt und 
eine 0 sie erlöschen lässt. Richtig? Dann ein kleiner Tip: Schau mal im 
Schaltplan wie die LEDs am Portpin angeschaltet sind.

Autor: TB (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, ich schaue mal rein...

Habe erwartet, dass eine 1 die LED einschaltet und eine 0 sie löscht.


Super, dass ich so schnell eine Antwort bekommen habe.

Autor: TB (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe mir das Datenblatt angesehen und das Problem gefunden.
Hätte das aus dem Gefühl anders herum erwartet, ist aber auch OK, jetzt 
wo
ich das weis.

Vielen Dank

Autor: Qwertz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Hätte das aus dem Gefühl anders herum erwartet,...

Nun, das ist verständlich, denn es liegt sicher nahe die Gedanken so zu 
verketten, das eine 1, wahr, eine leuchtende LED bedeutet.

Wie Dir hier vorgeführt wird, ist diese Festlegung absolut willkürlich 
und richtet sich in der Praxis nach den Gegebenheiten wozu auch der uC 
selbst gehört. Der kann nämlich mehr Strom nach GND ableiten als von VCC 
liefern.

Autor: H.Joachim Seifert (crazyhorse)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja, das ist nur ein Relikt aus vergangenen TTL-Zeiten. Bei moderner 
CMOS-Technolgie ist das so gut wie symmetrisch.
Aber wenn man es weiss, wann die LED leuchtet, ist es ja egal.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.