Warum lowpegel wenn logisch "1"??

Gast #173431
Lesenswert?

Hallo,
wenn ich meinen 89s8252 programmiere und eine LED am Port 2 leuchten
lassen möchte sage ich ja z.B. für die led an Port 2.1

loop: mov p2, #02
ljmp loop

Jetz habe ich aber beobachtet das dieses Pin dann auf low schaltet also
logisch 0, obwohl es doch genau andersherum sein müsst?
Habe die Antworten aus meinem letzten thread durchgeführ, ging aber
irgend wie nicht.
womit hängt das zusammen, kann ich das ändern?
Gast #173434
Lesenswert?

oh, hab gerade nochmal mit dem multi nachgemessen und es sind doch 5V
drauf, also auf high. Die led leuchtet nur soooo schwach das man es
kaum erkennen kann. Was kann ich jetzt tun damit sie heller leutet. ich
glaube sie bekommt nicht genug strom.
I=U/r
das heist eigentlich müsste ich einen ganz kleinen widerstand nehmen
damit ich ein großes I also stromstärke bekomme. Habs mit ner
Drahtbrücke versucht, aber erfolglos. :-(
hat jemand ne Idee
Gast #173438
Lesenswert?

Hast Du mal im Datenblatt nachgesehen, was für ein Strom der µC bei
Highpegel am Portpin liefern kann?
Es ist durchaus üblich, daß das nicht viel ist; der Strom, der bei
Lowpegel fließen kann, ist oft deutlich höher.
Gast #173439
Lesenswert?

Wenn du die Led ohne Vorwiderstand an den Controller angeschlossen hast,
dann kann es sein, dass entweder die Led oder der Controller dabei
kaputt gegangen sind. Den benötigten Vorwiderstand für eine
Standard-Led kannst du mit folgender Formel berechnen:

R=(U-2V)/0.02

Bei 5 Volt ergibt sich also ein Widerstand von mindestens 150 Ohm.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren