Hi Leute,
wieder einmal habe ich ein Verständnisproblem. Ich habe einen Pull Down
Widerstand an mein Atmega8 Starterkit rangelötet. Zu sehen ist er auf
dem Bild. Der Pull Down Widerstand hat einen Wert von 10 kOhm.
Nun ist es so, dass ich in Reihe zum Schalter eine LED mit einem 1 kOhm
Widerstand habe. Die Anode der LED ist mit VCC (5V) verbunden, die
Kathode an den 1 kOhm Widerstand. Somit ist, wenn der Taster geschaltet
ist, der Stromfluss von VCC zum Port des uC.
Ich verwende Port 1 (PB1) als Eingang, wie im folgenden Code zu sehen
ist.
1
#include<avr/io.h>
2
#include<util/delay.h>
3
4
intmain(void)
5
{
6
// Setze Bit 1 an PORTB auf Eingang
7
DDRB&=~(1<<PB1);
8
while(1)
9
{
10
}
11
return0;
12
}
Wenn ich den Taster drücke, fängt die LED jedoch nicht an zu leuchten.
Bevor ich durchmesse, ob irgendwo ein Verdrahtungsfehler etc. sein
könnte, möchte ich hier erstmal fragen, ob ich nicht einen gravierenden
Gedankenfehler habe.
Vielen Dank
...warscheinlich wird der strom durch den 1k widerstand und durch den
10k widerstand nach gnd fließen, also hast du quasi deine led über
gesamt 11k betrieben....da fließt so wenig strom,das nix leuchtet ;-)
...ausserdem wäre es einfacher gewesen,wenn du statt deiner beschreibung
die diode und den 1k widerstand in deinen schaltplan eingezeichnet
hättest ;-)
Hallo Klaus,
Du musst einen Verdrahtunsfehler gemacht haben. -> Wegstabenverbuchsler
sage wie weiterVerfahren.
Aber davon abgesehen, wirst Du nah der Reparatur feststellen, dass Dein
Port evtl kein ausreichendes Potential bekommt.....wenn ich Deine
Beschreibung richtig verstehe, bekommt er einmal GND (ueber den
Pull-Down) und einmal Vcc - Diodenspannung < 3V.
Reicht das dem Port um "H" zu sehene'
Gruss
Michael
Wegstaben Verbuchsler schrieb:> da der uC gesockelt ist, zieh ihn mal raus. Dann sollte die LED leuchten> beim TastendruckMichael Roek schrieb:> Hallo Klaus,>> Du musst einen Verdrahtunsfehler gemacht haben. -> Wegstabenverbuchsler> sage wie weiterVerfahren.>> Aber davon abgesehen, wirst Du nah der Reparatur feststellen, dass Dein> Port evtl kein ausreichendes Potential bekommt.....
...laut seiner beschreibung und foto hat er alles in reihe geschalten,
d.h. vcc--led--1k--schalter--10k--gnd ...mit abzweig zum mc zwischen
schalter und 10k.....was soll da bitte leuchten,wenn er den mc aus der
fassung nimmt ?
olaf s. schrieb:> ...warscheinlich wird der strom durch den 1k widerstand und durch den> 10k widerstand nach gnd fließen, also hast du quasi deine led über> gesamt 11k betrieben....da fließt so wenig strom,das nix leuchtet ;-)
Das wird es sein. Wenn du einen Pin als Eingang benutzt wird er doch
hochohmig (oder täusche ich mich?).
Du kannst zum Beispiel den Pin als Ausgang benutzen und low schalten
dann nimmt er Strom auf und die LED sollte leuchten bei gedrückter
Taste.
Ausserdem: anstatt den Pulldown kannst du den internen Pullup benutzen,
dann ist einfach die Logik invertiert (0 bei gedrückter Taste), das
spart ein Bauteil.
Hi,
vielen Dank schon mal vorab. Jedenfalls ist mein 1000 Zeilen Programm
fehlerfrei 8)
Ich habe den uC eben aus dem Sockel herausgezogen und den Taster
gedrückt. Die LED leuchtet dennoch nicht.
Bei immernoch herausgezogenem uC habe ich den 10 kOhm Widerstand
kurzgeschlossen, damit der Strom nur noch durch 1 kOhm begrenzt wird.
Die Diode leuchtet nicht.
Anbei findet ihr ein Bild. Die Anode habe ich gegen GND (im uC) mit
einem Spannungsmessgerät gemessen, 5V. Anode (A) und Kathode (K) der
LED, R1+ und R1- vom 1kOhm Widerstand, T+ und T- vom Taster (habe ich
auch auf Funktionsfähigkeit geprüft) und dann eben den Kurzschluss+ und
Kurzschluss- als Verbindung zu GND.
Ich finde, dass das eigentlich ganz ok aussieht. :/
Vielen Dank
Und du bist auch sicher, was Anode und Kathode(abgeflachte Seite oder
kürzeres bein) einer LED sind?
Ansonsten wüsste ich auch nicht...Mal prüfen ob auch tatsächlich 5V an
VCC ankommen, und GND auch wirklich mit GND der Spannungsversorgung
angeschlossen ist.
Gruß,
Wastl
Hi,
das lange Beinchen meiner LED ist im Bild (A), das kurze Beinchen ist
(K). Die Kerbung befindet sich ebenfalls in Richtung 1 kOhm Widerstand.
Ich habe die Spannung an VCC gegen GND vom uC und gegen GND vom
Gleichrichter gemessen, ~5V. Zur Kontrolle habe ich noch mal den
Widerstand zwischen GND vom uC und GND vom Gleichrichter gemessen, ~0
Ohm.
Ferner habe ich die LED getauscht. Die neue LED leuchtet ebenfalls nicht
:D
Ich bin jedenfalls froh, dass es nichts Triviales zu sein scheint, was
jedem von euch sofort ins Auge springt nur mir nicht :)
Klaus Dietmar schrieb:> Ich bin jedenfalls froh, dass es nichts Triviales zu sein scheint,
Na ja. eigentlich schon.
Die Schwierigkeit besteht darin, aus deinen wirren Beschreibungen etwas
sinnvolles zu machen, um so zu im Geiste ein Schaltbild zu zeichnen, was
du da eigentlich wie verschaltet hast.
Mach doch selber mal eine ordentliche Schaltskizze, wie du die Teile
miteinander verbunden hast.
Allerdings ist es reichlich sinnlos den Taster mit einer LED in Reihe zu
schalten.
Der Witz in der Progammierung besteht ja gerade darin, das nicht zu tun.
Der Taster kommt an einen Eingang und die LED kommt an einen Ausgang.
Und wenn das Programm den Tastendruck registriert, dann schaltet das
Programm die LED ein oder aus.
So weiß man dann auch gleich, ob das Programm auf den Tastendruck
reagiert oder nicht.
Um eine LED mit einem Taster ein/aus zuschalten, wobei der Taster die
LED bedient, braucht man ja keinen µC. Von daher ist das reichlich
witzlos.
Hallo Karl Heinz,
Karl Heinz Buchegger schrieb:> Die Schwierigkeit besteht darin, aus deinen wirren Beschreibungen etwas> sinnvolles zu machen, um so zu im Geiste ein Schaltbild zu zeichnen, was> du da eigentlich wie verschaltet hast.
Das tut mir sehr Leid. Ich war in dem (Irr)Glauben, dass die
anfänglichen Bilder sowie meine Beschreibung aufschlussreich genug
wären. Ich werde mir in Zukunft mehr Mühe geben.
> Mach doch selber mal eine ordentliche Schaltskizze, wie du die Teile> miteinander verbunden hast.
Da ich mich in Eagle noch nicht auskenne, habe ich provisorisch mit
Visio gearbeitet. Das Ergebnis seht ihr im Anhang.
Karl Heinz Buchegger schrieb:> Allerdings ist es reichlich sinnlos den Taster mit einer LED in Reihe zu> schalten.>> Der Witz in der Progammierung besteht ja gerade darin, das nicht zu tun.>> Der Taster kommt an einen Eingang und die LED kommt an einen Ausgang.> Und wenn das Programm den Tastendruck registriert, dann schaltet das> Programm die LED ein oder aus.> So weiß man dann auch gleich, ob das Programm auf den Tastendruck> reagiert oder nicht.>> Um eine LED mit einem Taster ein/aus zuschalten, wobei der Taster die> LED bedient, braucht man ja keinen µC. Von daher ist das reichlich> witzlos.
Ich wollte eigentlich das Display, welches man im Bild meines ersten
Posts sieht, als Ausgang verwenden, sprich "wenn Taster gedrückt, dann
schreibe ins Display bla". Das wollte ich über Interrupts realisieren
(weil ich damit noch keine Erfahrung habe und mich damit näher
beschäftigen wollte). Aus diesem Grund wollte ich mit der LED erstmal
testen, ob das mit dem Taster funktioniert (wenn sie leuchtet, dann
funktioiert es, ergo müsste im PB1 ein Signalwechsel erkannt worden sein
welches ich für meine Interrupts benötige). Wenn das funktioniert, hätte
ich die Interrupts im Programm hinzugefügt und anschließend zu guter
Letzt das Display mit eingebaut.
Ich dachte, dass es eigentlich eine gute Idee sei, so Step by step ins
Ziel zu kommen.
Viele Grüße
Dann könnts noch sein, dass du eine schwächliche LED hast die mit 5 mA
kaum leuchtet? Gerade so uralte LEDs mit eingefärbtem Plastik aus
irgendeiner Kiste sind manchmal ziemlich düster.
Hi Johannes,
Johannes G. schrieb:> Dann könnts noch sein, dass du eine schwächliche LED hast die mit 5 mA> kaum leuchtet? Gerade so uralte LEDs mit eingefärbtem Plastik aus> irgendeiner Kiste sind manchmal ziemlich düster.
die LEDs sind neu und haben bis gestern Abend noch funktioniert.
Ich glaube, dass ich Karl Heinz's Weg gehen werde, bevor ich jetzt noch
weitere Stunden mit der Fehlersuche vergeude. Also den Taster als
Eingang und die LED als Ausgang.
Gruß
> Ich glaube, dass ich Karl Heinz's Weg gehen werde, bevor ich jetzt noch> weitere Stunden mit der Fehlersuche vergeude. Also den Taster als> Eingang und die LED als Ausgang.
Bloss nicht......wenn Du eine LED mit Vorwiderstand und einem Taster
nicht
an einer Betriebsspanugn zum Laufen bekommst, dann tu solange nichts
anderes (komplizerteres), biss wenigstens DAS klappt!
Gruss
Michael
Hahahaha....also DIESE Schaltung (17:49) spricht NICHT fuer
E-Verstaendnis.
Der Vorteil: Du brauchst garkeinen uC, weder als Ein- noch als
AUsgang....
Gruss
Michael
Hallo Michael,
Michael Roek schrieb:> Hahahaha....also DIESE Schaltung (17:49) spricht NICHT fuer> E-Verstaendnis.> Der Vorteil: Du brauchst garkeinen uC, weder als Ein- noch als> AUsgang....
magst du mich bitte bitte aufgrund meiner geringen Elektronikkentnisse
aufklären?
Zur Info:
Vorher war noch ein 10 kOhm Pulldown Widerstand drinnen, den ich in der
ersten Fehlersuche durch eine einfache Leitung ersetzt habe.
Michael Roek schrieb:>> Ich glaube, dass ich Karl Heinz's Weg gehen werde, bevor ich jetzt noch>> weitere Stunden mit der Fehlersuche vergeude. Also den Taster als>> Eingang und die LED als Ausgang.>>> Bloss nicht......
Doch. Genau das sollte er tun.
Eine LED in Standardbeschaltung an einen Pin.
Den Taster in Standardbeschaltung an einen anderen Pin.
Die Standardbeschaltungen finden sich im AVR-Tutorial
Klaus Dietmar schrieb:> Hallo Karl Heinz,>> Karl Heinz Buchegger schrieb:>> Die Schwierigkeit besteht darin, aus deinen wirren Beschreibungen etwas>> sinnvolles zu machen, um so zu im Geiste ein Schaltbild zu zeichnen, was>> du da eigentlich wie verschaltet hast.>> Das tut mir sehr Leid. Ich war in dem (Irr)Glauben, dass die> anfänglichen Bilder sowie meine Beschreibung aufschlussreich genug> wären. Ich werde mir in Zukunft mehr Mühe geben.>
scharfes foto von oben und unten, die zusammenpassen, wäre hilfreich,
mit der platine in der hand würde wohl viele hier in weniger als 1 min
die sagen was los ist.
aber so brauch man 10 minuten um aus deinem durcheinander was zu
erahnen, zumal erst mal keiner vermutet das man so ein unsinn
zusammenbaut.
durch die diode fällt soviel spannung ab, das du je nach UC kein saubere
high mehr bekommst.
ausserdem auf der rückseite wo du kurzschluß geschrieben hast, sehe ich
auf dem Bild gar keinen, sprich der widerstand bekommt kein GND, also
kann auch nichts leuchten, es sein denn du gibst GND an PB1 aus, aber
das bild ist sehr unscharf.
miss mal die spannungen über die led, und den beiden R und poste die.
was ist das für eine led? led ist nicht gleich led.
>> Mach doch selber mal eine ordentliche Schaltskizze, wie du die Teile>> miteinander verbunden hast.>> Da ich mich in Eagle noch nicht auskenne, habe ich provisorisch mit> Visio gearbeitet. Das Ergebnis seht ihr im Anhang.
Eine mit Hand gezeichnete reicht vollkommen aus, solange man es
vernünftig lesen kann.
@Klaus Dietmar
in deiner Schaltung von 16.01.2012 17:49 ist deutlich zu sehen, daß du
deinen Port-Eingang PB1 zum uC fest auf Masse gelegt hast. Auch wenn du
da einen Taster betätigen würdest, käme da nichts anderes als "Masse"
(eine logische 0) zum PB1 "rein".
hast du das so konzipiert, oder nur falsch gezeichnet?
noch ein Formulierungs-Tip: Du spichstc bei deiner Platine von
"Kurzschluss", den du irgendwo gemacht hast. Kurzschluss ist was
"negatives", und hat eigentlich meistens eine "zerstörende" Bedeutung
Richtiger und besser wäre hier das Wort "Drahtbrücke" (egal ob das
Stückchen Draht nun gebogen oder grade ist, oder sich durch einen
Lötzinn-Klecks ergibt).
Hallo Wegstaben Verbuchsler, hallo liebe Forengemeinde,
zunächst einmal vielen Dank für eure Mühe, Hilfsbereitschaft und vor
allem für eure konstruktive Kritik wie ich die Qualität meiner Beiträge
verbessern kann.
Wegstaben Verbuchsler schrieb:> in deiner Schaltung von 16.01.2012 17:49 ist deutlich zu sehen, daß du> deinen Port-Eingang PB1 zum uC fest auf Masse gelegt hast. Auch wenn du> da einen Taster betätigen würdest, käme da nichts anderes als "Masse"> (eine logische 0) zum PB1 "rein".>> hast du das so konzipiert, oder nur falsch gezeichnet?
Die Schaltung vom 16.01.2012 17:49 ist so konzipiert. Allerdings dient
sie lediglich der Fehlerbegrenzung und hat keinen tiefgründigeren Sinn.
> noch ein Formulierungs-Tip: Du spichstc bei deiner Platine von> "Kurzschluss", den du irgendwo gemacht hast. Kurzschluss ist was> "negatives", und hat eigentlich meistens eine "zerstörende" Bedeutung>> Richtiger und besser wäre hier das Wort "Drahtbrücke" (egal ob das> Stückchen Draht nun gebogen oder grade ist, oder sich durch einen> Lötzinn-Klecks ergibt)
Du hast recht, Drahtbrücke ist passender. Ich werde es mir merken.
Vielen Dank für den Tipp.
Hallo Mikel,
auch dir danke. Ich habe noch mal drei Fotos geknipst. Hoffentlich sind
sie jetzt besser zu erkennen.
Ich habe die Spannungen eben versucht zu messen. Die Spannung über der
LED wurde mit 0V angezeigt. Multimeter war sowohl im mV Messbereich
eingestellt als auch im V Messbereich.
Gruß