ATmega8 Outputs funktionieren nicht?

OP #4079345
Lesenswert?
• ▲
▼
Hallo,

ich habe mir bei embedded-projects das AVR-Starterkit bestellt. Jetzt 
wollte ich das Teil mal mit dem Beispielprogramm-Blink "angucken", 
jedoch funtktioniert es leider nicht. Das Programm wird ohne Probleme 
hochgeladen (siehe Anhang), der Jumper für die LED ist auch gesetzt und 
am ATmega liegt Strom an. Habe danach mal an PB1 eine LED, danach eine 
Glühbirne angeschlossen, aber der Output will auch nicht.. Kann's sein, 
dass ich irgendwas grundsätzlich falsch gemacht habe, oder mag mich der 
µC einfach nicht?

Danke im Voraus,

herp_derp
Angehängte Dateien:
OP #4079357
Lesenswert?
• ▲
▼
Christian J. schrieb:
> Moritz S. schrieb:
>> Joa, ich dachte bevor irgendwie die LED nicht mitmacht, probier ich halt
>> mal ne Glühbirne, da kann ja erstmal weniger mit passieren^^
>
> Ok, eine 220V Glühbirne oder eine 20W Autobirne? Das müssten wir erstmal
> genau wissen. Glühdraht oder Halogen?

Nene, so ne kleine mit Fassung zum Löten in die Schaltung, hab mich mit 
Glühbirne vielleicht ein bisschen schlecht Ausgedrückt.
Gast #4079359
Lesenswert?
• ▲
▼
Moritz S. schrieb:
> Habe danach mal an PB1 eine LED, danach eine
> Glühbirne angeschlossen, aber der Output will auch nicht.

Und du bist sicher, dass dein ATmega in der Lage ist, deine Glühbirne 
direkt anzusteuern? Was war denn das für ein 
Mikrospezialstromsparbirnchen?

Auch bei einer LED muss ein Vorwiderstand den Strom auf den für den 
Prozessorausgang zulässigen Wert begrenzen (s. Datenblatt unter absolut 
maximum ratings)
OP #4079363
Lesenswert?
• ▲
▼
Thomas W. schrieb:
> Moritz S. schrieb:
>> Habe danach mal an PB1 eine LED, danach eine
>> Glühbirne angeschlossen, aber der Output will auch nicht.
>
> Und du bist sicher, dass dein ATmega in der Lage ist, deine Glühbirne
> direkt anzusteuern? Was war denn das für ein
> Mikrospezialstromsparbirnchen?
>
> Auch bei einer LED muss ein Vorwiderstand den Strom auf den für den
> Prozessorausgang zulässigen Wert begrenzen (s. Datenblatt unter absolut
> maximum ratings)

Ja ich hab' auch einen Widerstand vorgehängt, aber damit wir vielleicht 
mal wieder zum Problem kommen: selbst die vorverbaute LED auf dem 
Olimex-Board funktioniert nicht mit dem Beispielprogramm, da ist doch 
jetzt erstmal egal, ob ich da ne Glühlampe angeschlossen hab oder nicht? 
:D
#4079367
Lesenswert?
• ▲
▼
Ein Kontrollerpin, der per 1 im entsprechenden DDR.. 
(data-direction-register) als AUSGANG programmiert ist, kann maximal 
etwa 20mA liefern. Da bringt man nicht einmal die kleinsten Glühlampen 
zum Erröten. Die leuchten erst bei ca. 50mA richtig.

eine LED leuchtet schon bei wenigen mA. nur kommt es dann auch darauf 
an, wie die LED angeschlossen ist. Bei 1 an portb,1 muss die Kathode in 
richtung Masse gehen, ein Vorwiderstand im Bereich 1kOhm bis 270 Ohm ist 
dabei eine gute Tat für die LED und den Kontrollerausgang.
#4079373
Lesenswert?
• ▲
▼
Moritz S. schrieb:
> da ist doch
> jetzt erstmal egal, ob ich da ne Glühlampe angeschlossen hab oder nicht

Das ist gleichwertig zum Nicht-Angeschlossen-Haben. Auch wenn der 
Kontroller so funktionieren würde wie Du Dir das vorstellst, wird kein 
Glühen sichtbar sein.

Und dem Pin des Kontrollers ist es eben nicht egal: er wird beinahe mit 
einem Kurzschluss belastet. (Gottseidank vertragen die meisten 
Kontroller bei 5V Betriebsspannung solchen Unsinn klaglos.)
#4079407
Lesenswert?
• ▲
▼
Dass sich der μ programmieren lässt, spricht schon mal dafür, dass 
Stromversorgung etc richtig sind.
Nun hast du das Programm aus der Anleitung kompiliert und geflasht und 
die aufgelötete LED (an PC5) bleibt trotzdem dunkel? Jumper ist gesetzt? 
Glühlampe ist wieder weg? Dann sollte das eigentlich nicht so ;-)
Schwierig ohne mehr Infos zu raten, wodran es liegen könnte. Sonst mach 
doch mal ein Foto von deinem Aufbau oder so.
Gast #4079414
Lesenswert?
• ▲
▼
Worauf bezieht sich Dein "trotzdem"? Trotz wem oder was?

Es gibt eine schier unendliche Zahl von möglichen Ursachen, wenn auch in 
der Praxis immer die selben 3 Dutzend letztlich verantwortlich sind.

Unser Problem ist, dass wir weder die Situation kennen noch Deinen 
Kenntnisstand. Jedenfalls nur einige Bruchstücke. Das können wir ja auch 
nicht wissen. Z.B. wissen wir nicht, dass Dir klar ist, das man 
Vorwiderstände für LEDs verwenden muss, da Du es zuerst nicht gesagt 
hast. Andererseits ist der Anschluss einer Glühlampe (Birnen gibt's im 
Obstgeschäft) nun eher ein Zeichen für geringe Kenntnisse.
Gib uns alle Information so ausführlich wie es geht.
Und was sollen wir mit einem Log-File ? Das mache ich nicht mal auf.

Und sage bitte nicht, dass Du ja hier fragst, weil Du keine Ahnung hast. 
Die Ahnung verschafft man sich erst, versucht dann und denkt über die 
Ergebnisse nach. Dann hat man auch Ergebnisse! Und erst wenn das nicht 
weiterhilft, fragt man, und zwar mit allen Informationen und so klar 
(mit kompletten grammatischen Sätzen) und ausführlich wie möglich.

Von Threads wie Deinen gibts hier Dutzende in der Woche. Alle sind 
gleichermaßen frustrierend. Versuche es noch einmal. Wir sind willig, 
aber wir popeln Dir nicht alles einzeln aus der Nase.
Gast #4079420
Lesenswert?
• ▲
▼
Peter R. schrieb:
> Da bringt man nicht einmal die kleinsten Glühlampen
> zum Erröten. Die leuchten erst bei ca. 50mA richtig.

Und vorher versucht sie noch, eine satte Portion Einschaltstrom zu 
ziehen, damit sie überhaupt auf die Temperatur kommt, bei der sie nur 
50mA zieht ;-)
Gast #4080080
Lesenswert?
• ▲
▼
Hallo,

Du hast geschrieben, Du hättest das Lämpchen mit Port B Pin 1 (PB1) 
verbunden.

Laut den Unterlagen zur Schaltung ist die LED aber an Port C Pin 5 (PC5) 
angeschlossen. Dazu muss zusätzlich noch der Jumper gesteckt sein.

Da nach deinen Angaben das Brennen des Programms funktioniert hat, 
können wir davon ausgehen, dass der Controller grundsätzlich richtig 
angeschlossen ist und wohl auch läuft.

Welches Programm hast Du denn genommen? Jenes aus der Anleitung? Per 
Copy und Paste in die Entwicklungsumgebung übernommen oder abgetippt?

Vergleiche noch einmal, welcher Portpin denn nun wirklich getoggelt 
wird?


Des weiteren kannst Du auch noch testen, ob die LED auch wirklich 
funktioniert. Dazu entfernst Du den Controller aus der Fassung und 
verbindest PC5 mit GND (Masse). Du verbindest also die Kontakte 28 (PC5) 
und 8 (GND) mit einem Stückchen blanken (oder abisolierten) Draht 
passenden Durchmessers. Die Zählung der Kontakte beginnt dabei von Unten 
Links. Der Jumper für die LED muss für den Test gesetzt sein.


Murmelchen

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.