AVR Studio Problem.

Gast #56312
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
Gast
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
Gast
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
Gast
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.
Gast
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.
Gast
@ 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
Gast
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.
Gast
hast du denn auch unterroutnen geschrieben, in denen oft verwendete
sachen erledigt werden und somit nurnoch mit call / rcall aufgerufen
werden müssen?
Gast
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...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.