Wie passt das in ATmega8?

Gast #855584
Lesenswert?
• ▲
▼
Hallo

Ich bin gerade an einer Voruntersuchung für eine FFT in einem ATmega8. 
Ich konnte es noch nicht testen, da ich noch keine Hardware habe. In 
einem Codebeispiel habe ich folgende Variablendeklaration gefunden
1
typedef struct _tag_complex_t {
2
  int16_t  r;
3
  int16_t i;
4
} complex_t;
5

6

7

8
int16_t capture[FFT_N];      /* Wave captureing buffer */
9
complex_t bfly_buff[FFT_N];    /* FFT buffer */
10
uint16_t spektrum[FFT_N/2];    /* Spectrum output buffer */

FFT_N ist mit 256 definiert. Wie passt das aber in 1kB RAM? Die komplexe 
Struktur ist doch schon 1kB groß oder nicht? (256 * 2(komplex + 
imaginär) * 2Byte)
#855596
Lesenswert?
• ▲
▼
Daniel_s wrote:

> FFT_N ist mit 256 definiert. Wie passt das aber in 1kB RAM?

Der Compiler wirds dir schon sagen.
(Sorry, konnte nicht widerstehen)

Das kann natürlich nicht passen.
Sicher dass für FFT_N nicht irgendwo eine Obergrenze
dokumentiert ist, die auf einem Mega8 kleiner als 256 ist?

> Die komplexe
> Struktur ist doch schon 1kB groß oder nicht? (256 * 2(komplex +
> imaginär) * 2Byte)

Yep.

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