Forum: Mikrocontroller und Digitale Elektronik AVR Studio Problem.


von Merle (Gast)


Lesenswert?

Hi
Ich hoffe jemand kann mir helfen.

Ich hab folgendes Problem:
Ich programmiere grad en ATmega8515 er hat 8KB Flash
aber er kann laut AVR nur 4096 Wörter speichern
und das ist doch ziemlich wenig für 8 KB oder??

Und wenn ich mit yaap 6.0, den Atmel mit
nem Programm so um die 3000 wörter programmieren
will lädt es das Programm nie rihtig rauf.

Ist das Parallelport zu langsam oder
muss ich da was anders einstellen??

Gruß
Merle

von Sebastian Wille (Gast)


Lesenswert?

Hi,

4096 Worte = 8192 Byte = 8KB.

Sebastian

von Merle (Gast)


Lesenswert?

Hi
Sebastian Wille

Aso das 4096 Wörter schon so viel sind
Hätte ich nicht gedacht. Danke für die auskunft.

Das heißt ich muss mir anscheinend
einen ATmega128 zulegen.

Mfg. Merle

von Sebastian Wille (Gast)


Lesenswert?

Hi,

was ist denn das für ein Projekt?!?

Sebastian

von Merle (Gast)


Lesenswert?

Nun ja es geht darum ein im Paint genmaltes bild
Per Autowrite Modus auf ein 240x64 großes
Garfik LCD zu Bringen aber da ich nur 4096
Wörter zur verfügung habe aber über 7000 Wörter Brauche
muss ich das irgendwie anders machen.

Mfg. Merle

von Jens Renner (Gast)


Lesenswert?

3000 Worte ist schon recht viel. Bist Du sicher, dass Du nicht zu
verschwenderisch programmiert hast? Btw, die Anzahl der Worte hat nur
indirekt mit Deinem Assemblercode zu tun; direkt daraus ablesen kannst
Du das schwerlich.

Ich denke, der Mega128 ist etwas zu groß. Vor allem gibt's den nur als
TQFP und MLF, soweit ich weiß. Ist zum Experimentieren vielleicht etwas
umständlich.

von Jens Renner (Gast)


Lesenswert?

Nachtrag: ein 1-Bit-Bitmap der Größe 240x64 benötigt 1x240x64 Bit = 1920
Byte = 960 Worte.

Bist Du bei Deiner Berechnung ganz sicher? Da müsste das restliche
Programm schon sher groß sein.

von Merle (Gast)


Lesenswert?

@ Jens Renner

Ich muss nochmal nachschauen.
Ich hatte auch schon den verdacht das
etwas nicht stimmt.

Aber es könnte uch sein weil man um
z.B. 0b11001111 im autowrite modus auszugeben
auch schon 3 wörter braucht.

Gruß
Merle

von Jens Renner (Gast)


Lesenswert?

Aber das dürfte trotzdem nicht viel mit der Programmgröße zu tun haben.
Was genau meinst Du mit Autowrite? Autoinkrement? Das hat nämlich
eigentlich keinen Einfluss darauf.

von Merle (Gast)


Lesenswert?

Nö
Ich meine Den Autowritemodus oder auch
"Auto Data Write Mode" genannt.

Mfg. Merle

von Henning (Gast)


Lesenswert?

hast du denn auch unterroutnen geschrieben, in denen oft verwendete
sachen erledigt werden und somit nurnoch mit call / rcall aufgerufen
werden müssen?

von Fiffi (Gast)


Lesenswert?

Hallo Merle,

in welcher Sprache hast du das Programm den geschrieben ?
Kannst du es mal posten ?

von Henning (Gast)


Lesenswert?

assembler, also auch im avr studio.

dein programm mach irgendwas, dann soll der aufruf kommen
...

 rcall label
 nop

...

es wird dann hierher gesprungen und beim ausführen des ret befehl kehrt
er in die zeile nach "rcall laben" zurück. (da wo oben das nop
steht)

label:
 nop ;tue irgendwas
 ret ;rückkehrbefehl

damit kann man ne menge programmspeicher sparen. guck dir das turorial
auf dieser seite an...

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.