www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Lauflicht


Autor: Blutiger Anfänger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Als eines meiner ersten Anfängerprojekte
wollte ich ein kleines Lauflicht programmieren, bei dem immer zwei
LED's an PORTD meines ATMega 8 von links nach rechts laufen. Das
funktioniert auch ganz gut. Nur das nach etwa 2 manchmal auch 3
Durchgängen die LED's von der Mitte wieder zum Ausgangspunkt
springen.
Es scheint so als würde der Controller reseten. Aber warum?
Vielleicht hat jemand von euch eine Idee!
P.S. Bitte nicht über die vielleicht umständliche Programmierweise
lustig machen. Bin wie schon gesagt noch Anfänger

MFG

Blutiger Anfänger

Autor: Chriss (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab mir den Code jetzt nicht angeguckt, aber manchmal ist der Fehler
auch in der Beschaltung zu finden.


Womit befeuerst du denn deinen uC?
Batterie, transformator/Geichrichter/Netzspannung etc.?

Autor: leo9 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hab den code zwar nur überflogen, aber zwei Sachen sind mir
aufgefallen:

1) du sicherst das Status Register in der Int-Routine nicht.

2) du verläßt die Int-Routine manchmal (BREQ led) mit einem Jump und
springst weiter in die Main-loop. Den Int enablest du zwar mit sei
wieder, aber der Stack wird vollgeschrieben.
-> in den ledxx: Routinen sei weglassen und rjmp loop dirch reti
ersetzen

grüsse leo9

Autor: Blutiger Anfänger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Erstma Danke für die Antwort!

@Chriss

Denke nicht das es an der äußeren Beschaltung liegt.Verwende ein
umgebautes PC- Netzteil als Spannungsversorgung.

@Leo9

Es leuchtet zwar ein, was du geschrieben hast. Es verschlimmert den
ganzen Effekt aber eher! Aber trotzdem Danke!

MFG

Blutiger Anfänger

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Spring niemals aus einer Interrupt-Routine heraus. Sie sollte immer
mit einem reti verlassen werden - alles andere ist unsauber und bringt
nur Probleme.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gilt aber auch für jedes andere Unterprogramm:

Spring niemals aus einem Unterprogramm heraus !


Peter

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
du schreibst im Beitrag dass du einen ATMega8 verwendest. Das gleiche
wird im Programm im Kommentar ganz oben auch noch mal geschrieben. Und
dann kommt '.include "4433def.inc"'. Welcher µC wird denn jetzt
verwendet? Ich hätte jetzt eigentlich '.include "m8def.inc"'
erwartet.

Gruß
Thorsten

Autor: Blutiger Anfänger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Habe jetzt alles geändert(Anhang). Auch das mit m8def.inc.
Der Fehler ist aber immernoch da! Noch jemand eine Idee?

Autor: Thorsten (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich lagere meine SMD-Teile in Boxen, wie im Anhang. Habe übrigens noch
15 Stück übrig, die könnte ich gerne günstig abgeben.

Maße gesamt: 90 x 38
Maße ein Fach: 17x17x6 (LxBxH) (alles in mm)

Pro Fach passen zwar nicht 1000 Widerstände rein, aber ca. 150-200
1206er ist kein Problem.

Schick einfach eine Mail bei Interesse.

Gruß
Thorsten

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry Leute, hab den falschen Thread erwischt; Sorry :)

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.