LEDs an STK500 aktiv bei logisch 0?

OP #702090
Hallo miteinander,

habe gestern versucht mit meinem stk500 mal was einfaches zu probieren 
für den anfang. ich wollte die leds ansprechen über portb, aber wenn ich 
ne 1 auf den entsprechenden pin geschrieben hab, war die led aus, bei 
ner 0 ging sie an. komisch oder?

einstellungen portb:

DDRB=0xff;
PORTB=0b00001010;

d.h. die ersten vier leds sind an, dann eine aus, usw.

woran könnte das liegen?


grüße
#702093
Andreas Neef wrote:

> ne 1 auf den entsprechenden pin geschrieben hab, war die led aus, bei
> ner 0 ging sie an. komisch oder?

Ist so, ja. Und für Leute, die schon einmal mit TTL- oder NMOS-Technik 
gearbeitet haben, ist diese Sichtweise auch völlig normal.

Früher konnten Ausgänge weit besser runter als hochziehen, bei 
8051-Varianten ist das heute noch oft so und die alten AT90-AVRs waren 
auch nicht symmetrisch.
Persönliche Seite #702105
Die Schaltung der LEDs auf dem STK500 ist analog wie in 
http://www.mikrocontroller.net/articles/AVR-Tutorial:_IO-Grundlagen#Hardware

> PORTB=0b00001010;
> d.h. die ersten vier leds sind an, dann eine aus, usw.

Aus der Sichtweise des Programmieres sind nicht die ersten sondern die 
oberen LEDs an (4 bis 7, sowie 0 und 2).

Bit   76543210
    0b00001010;

Siehe auch Zahlensysteme
http://www.mikrocontroller.net/articles/AVR-Tutorial:_IO-Grundlagen#Zahlensysteme
#702385
@ Andreas Neef (typohneahnung)

>D.h. aber dann auch, wenn ich eine Bitfolge direkt ausgeben möchte, muss
>ich sie vorher, wie auch immer, invertieren?

Wo ist das Problem? Das ist ein einfacher Befehl, sowohl in C als auch 
Assembler.
1
  com    r16
1
  PORTA = ~leds;

> Da kommt man doch durcheinander oder?

Nö.

MFG
Falk
Gast #702387
>D.h. aber dann auch, wenn ich eine Bitfolge direkt ausgeben möchte,
>muss ich sie vorher, wie auch immer, invertieren? Da kommt man
>doch durcheinander oder?

das liegt eben in deinem Ermessen... 'denkst' du high-active oder 
low-active... von links nach rechts oder von rechts nach links...

das schöne ist, man kann sich das so einrichten wie man am besten damit 
klarkommt...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.