mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Blinklicht


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

Bewertung
0 lesenswert
nicht lesenswert
Hi,
bin noch Anfänger in der Assembler Welt, ihr müsst mir mal auf die
Sprünge helfen...
Warum zur Hölle funktioniert dieser (meiner Meinung nach logisch
korrekter Code) nicht auf meinem ATmega8-16PI? Hardware ist
funktionsfähig, die LED sagt aber keinen Ton...

Autor: Marius (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo
Ich kenne mich nicht gut in assembler aus drum kann ich keine Fehler im
code suchen/finden.
Aber du haßt den 4433 defeniert du willst aber den Atmega8 verwenden.
Müsste dann IMHO .include "m8def.inc" heißen nicht .include
"4433def.inc".
Hoffentlich hilfts dir ein bisschen
mfg Marius

Autor: Jens Renner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bist Du sicher, dass Du keinen 4433 verwendest...? Dessen Headerdatei
hast Du nämlich eingebuden.

Autor: Marius (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch mal mit weniger Rechtschreibfehlern.

Hallo

Ich kenne mich nicht gut in Assembler aus drum kann ich keine Fehler
im
Code suchen/finden.
Aber du hasst den 4433 definiert du willst aber den Atmega8 verwenden.
Müsste dann IMHO .include "m8def.inc" heißen nicht .include
"4433def.inc".
Hoffentlich hilft es dir ein bisschen
mfg Marius

Autor: sceak (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, soweit so gut, das habe ich schonmal geändert. Bringt aber kein
besseres Ergebnis, mag daran liegen dass die Definitionen nahezu
identisch sind.

Autor: sceak (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm, wenn ich die m8def.inc einbinde gibt mir mein Assembler folgende
Ausgabe, mit der 4433def.inc gings... confused

Including  'C:\Programme\Atmel\AVR
Tools\AvrAssembler\AppNotes\m8def.inc'
C:\Dokumente und Einstellungen\sceak\Desktop\blinklicht.asm(21) :
warning: Immediate byte operand out of range
C:\Dokumente und Einstellungen\sceak\Desktop\blinklicht.asm(22) :
error : Undefined variable referenced
Assembly complete with 1 error

Autor: Jens Renner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Soweit ich weiß, besteht wg. des größeren RAMs beim Mega8 der
Stackpointer aus SPL und SPH. Das heißt, Du musst den Stackpointer mit
high(RAMEND)und low(RAMEND) initialisieren.

Autor: Jens Renner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Fehlermeldung betrifft genau den Stackpointer. RAMEND ist eine
16bit-Konstante, und SP existiert nicht.

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

Bewertung
0 lesenswert
nicht lesenswert
Es waren mehrere Fehler drin.
Hab mal ein paar kleine Änderungen vorgenommen.
Jetzt funktioniert es.

Autor: sceak (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey, danke,
erstmal grosses Lob an alle hier für die schnellen Antworten...

Kann mir denn einer sagen wie ich den Stackpointer im Assembler richtig
initialisiere? Finde in der Definitionsdatei nichts bzgl. dem
Stackpointer und im Datenblatt steht auch nichts diesbzgl.

Autor: sceak (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das geht so schnell da kann ich gar nicht schnell genug antworten...
Danke, Stefan, es geht nun...

Irgendwie hatte ich mir die falschen Hilfen gesucht, und das hat mich
doch etwas in den Wahnsinn getrieben ;) Danke dass ihr mich aufgeklärt
habt :))

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.