Forum: Mikrocontroller und Digitale Elektronik Probleme beim Auslesen von EEPROM (ATTiny85)


von Markus (Gast)


Lesenswert?

Hallo,

ich bin heut nach einer halben Ewigkeit auf ein merkwürdiges Verhalten 
gestoßen.
Wenn ich bei meinem ATTiny85-20PU reouniert der Funktionsaufruf

eeprom_read_block(buffer1, 0, __SIZE);

nicht mehr, sobald __SIZE >= 512 ist.

Ist das ein bekanntes Problem? Laut Datenblatt hatt er doch 512 Byte 
EEPROM. Wieso macht es solche probleme den ganzen Speicher auf einmal 
auszulesen?

Anbei das Testprogramm mit dem ich es gtestet habe:


1
#include <avr/io.h>
2
#include <avr/eeprom.h>
3
#define __SIZE 512
4
int main(void)
5
{
6
    DDRB |= (1 << DDB2);    //led
7
    uint8_t buffer1[__SIZE];
8
    eeprom_read_block(buffer1, 0, __SIZE);
9
    PORTB |= (1 << PB2);
10
    while(1);
11
}

von chris (Gast)


Lesenswert?

Der Controller hat nur 512 Byte RAM.
D.h. da ist dann kein Platz mehr für Stack etc. wenn dein Puffer schon 
512 Byte hat.

von Markus (Gast)


Lesenswert?

Das ist jetzt aber peinlich :$

Vielen Dank! Ich möchte gar nicht sagen wieviel Zeit ich schon mit 
diesem "Fehler" scho vergeudet habe.

von Markus 2 (Gast)


Lesenswert?

Markus schrieb:
> Das ist jetzt aber peinlich :$
>
> Vielen Dank! Ich möchte gar nicht sagen wieviel Zeit ich schon mit
> diesem "Fehler" scho vergeudet habe.

Oder Unwissenheit, da man zur heutigen Zeit ja keine Datenblätter mehr 
ließt.

von Joachim B. (jar)


Lesenswert?

Markus 2 schrieb:
> da man zur heutigen Zeit ja keine Datenblätter mehr
> ließt

echte Männer lesen keine Anleitungen und kennt man einen AVR kennt man 
alle.

scnr

ich gestehe ich bin auch nicht ganz frei davon, so haben mich schon 
Registernamenänderungen überrascht.

: Bearbeitet durch User
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.