Hallo Zusammen,
ich hab mit GCC eine Programm für einen Atmega64 AU geschrieben.
Sobald ich per Include ein großes Array einbinde mit 350 Double
einträgen, klappt nichts mehr....
Vorab verwende ich schon zwei Array mit je 500 Int Einträgen.
In der Summe als
Array 350 * double
Array 1000 * int
Kann es sein das da irgendwie eine Sperre ist?
Insg. ist das Programm nur
1 | avrdude: 16832 bytes of flash written
|
groß. Hat Atmega hat ja 64kb, sollte eigentlich reichen.
GCC hat hat auch keine Fehler ausgegeben.
Die Array werden 'dynamisch' definiert.
z.B. so für die 350 Double einträge
1 | void calculate(void) {
|
2 |
|
3 | //...
|
4 |
|
5 | static double cos[171]; // SIN COS
|
6 | static double sin[171];
|
7 |
|
8 | cos[0] = 0.08716; // -85
|
9 | cos[1] = 0.10453; // -84
|
10 | cos[2] = 0.12187; // -83
|
11 | cos[3] = 0.13917; // -82
|
12 | cos[4] = 0.15643; // -81
|
13 | cos[5] = 0.17365; // -80
|
14 | cos[6] = 0.19081; // -79
|
15 | //...
|
16 | }
|
Gleiches für die Int Array.
Weiß wirklich nicht weiter, akutelle GCC Version hat nichts gebracht,
sobald ich das Double Array (siehe oben) nicht verwende funktioniert
alles besten.
Über Hilfe würde ich mich super freuen.
Vielen Danke & Viele Grüße
Bernd