Forum: Mikrocontroller und Digitale Elektronik timer steuern


von Markus M. (seeadler78)


Angehängte Dateien:

Lesenswert?

ich bin gerade noch am anfang und versuche assamler für den mc zu
lernen
jetzt habe ich folgendes geschriebenmehr zum ausprobieren als für die
praxis.jetzt bekomme ich immer die fehlermeldung
error: Undefined symbol: sph (29)
error: Invalid register  (41)
ich weiss nicht was an sph falsch sein soll.
ausserdem wüsste ich mal gerne wie man den timer richtig benutzt.zum
beispiel 80s zählen und dann den interrupt licht_aus ausführen
danke seeadler78

von Karl heinz B. (kbucheg)


Lesenswert?

Mit dem Aps File kann aber keiner was anfangen. :-)

von Markus M. (seeadler78)


Angehängte Dateien:

Lesenswert?

ist das besser

von johnny.m (Gast)


Lesenswert?

Der Tiny 2313 hat kein sph-Register. Der Stack Pointer ist nur ein Byte
lang.

von Markus M. (seeadler78)


Lesenswert?

ah deswegen,muss ich das nur so

  ldi temp1,low(ramend)
  out sp, temp1

eingeben

von johnny.m (Gast)


Lesenswert?

Ach ja, und wenn Du 'temp' definierst und dann push tmp schreibst,
gibts natürlich auch nen Fehler, weil der Assembler 'tmp' natürlich
nicht kennt.

von Markus M. (seeadler78)


Lesenswert?

ich habe doch tmp definiert
den fehler macht er bei out TCCR0,5

von johnny.m (Gast)


Lesenswert?

Steht alles im Datenblatt (Seite 44, einfach abschreiben...). Muss
natürlich spl heißen

von johnny.m (Gast)


Lesenswert?

Jau, klar. Mit out kannste natürlich keinen immediate-Wert ausgeben.
Musst die '5' erst in ein Register laden und dann out TCCR0, rXX.

von Markus M. (seeadler78)


Lesenswert?

jetzt habe ich noch den fehler mit out TCCR0,5
was ist da falsch dran

von johnny.m (Gast)


Lesenswert?

Immer noch??? Oder nur nicht gelesen vorm Schreiben? Schau Dir in
solchen Fällen am besten immer als erstes im Instruction Set Manual an,
was der Befehl, der zu einem Fehler führt, eigentlich macht.

von johnny.m (Gast)


Lesenswert?

Also z.B.:
ldi temp, 5
out TCCR0, temp

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.