Erweiterte LCD-Ansteuerung Code zu groß!!

Gast #2374109
Lesenswert?

Hi Leute,

Um mein LCD-Display zu testen möchte ich den Code von dieser Seite 
benutzen:

http://www.mikrocontroller.net/articles/Erweiterte_LCD-Ansteuerung

Doch bei Compilieren kommt die Fehlermeldung, dass der Flash voll ist.
Ich beutze aber den Atmega8515, auf dem das Programm laut Seite getestet 
wurde.

Könnt ihr mir helfen, und was braucht denn da am meisten Speicher?

danke schon mal
Gast #2374148
Lesenswert?

..habs mal eben durchcompiliert:
1
$ for f in *c ; do avr-gcc -Wall -mmcu=atmega8515 -DF_CPU=1000000UL -Os -c -o ${f%c}o $f ; done
2
main.c: In function ‘main’:
3
main.c:407: warning: control reaches end of non-void function
4
$ avr-size *o
5
   text    data     bss     dec     hex filename
6
    388       0       0     388     184 lcd.o
7
   2346      27       0    2373     945 main.o

..da kommts also nicht her. Nach dem zusammenlinken kommt man auf gut 
4k:
1
$ avr-size *elf
2
   text    data     bss     dec     hex filename
3
   4414      28      32    4474    117a main.elf

Ah, hast du die Optimierungen ∗aus∗geschaltet? Dann passts (latürnich) 
nicht in die 8k.

HTH
Gast #2374170
Lesenswert?

> -Os an?

Nein aus höchstwahrscheinlich - Ich vermute mal gaanz stark dass er die 
Optimierungen ausgeschaltet hat. Das ist die einzige Variante bei ders 
zu groß wird:
1
$ rm *o ; for opt in 0 1 2 3 s ; do for f in *c ; do avr-gcc -Wall -mmcu=atmega8515 -DF_CPU=1000000UL -O$opt -c -o ${f%.c}-${opt}.o $f >/dev/null 2>&1 ; done ; done ; avr-size *o
2
   text    data     bss     dec     hex filename
3
   3856       0       0    3856     f10 lcd-0.o
4
    436       0       0     436     1b4 lcd-1.o
5
    400       0       0     400     190 lcd-2.o
6
   2000       0       0    2000     7d0 lcd-3.o
7
    388       0       0     388     184 lcd-s.o
8
   9260      27       0    9287    2447 main-0.o
9
   2498      27       0    2525     9dd main-1.o
10
   2338      27       0    2365     93d main-2.o
11
   3840      27       0    3867     f1b main-3.o
12
   2346      27       0    2373     945 main-s.o
Gast #2374171
Lesenswert?

> aber wie mach ich denn die Optimierung und wo im Programm schreib ich
> das rein?

Ins Programm (erst mal) gar nicht. Irgendwo(tm) in Deiner IDE. 
Möglicherweise langst schon wenn Du auf 'release'-Modus umschaltest, 
sonst die Projekteinstellungen durchforsten.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren