SD-Karte an Atmega48/88

Gast #2911200
Lesenswert?

µC-Bastler schrieb:
> Bei anderen Projekten läuft SD-Software sogar auf einem ATmega8.
Aber Du hast schon gesehen, das da relativ schnell auf einen ATmega32 
gewechselt wurde. Hier der Grund:
1
Right now flash is 99.9% full
Abgesehen davon ist da m.E. im Schaltplan ganz schön gemurkst worden 
(z.B. ATmega IO's mit 5V gehen direkt auf die SD-Karte)

August
Gast #2912178
Lesenswert?

liegt das dann an der Größe des Datenpuffers, den man zum Schreiben auf 
die SD-Karte im uC braucht, der dann so viel Speicher verbraucht? 
Angenommen, man hat nur alle 30 Sekunden einen Temperaturwert, der 
gesichert werden soll, oder wäre das auch schon zu viel?
Gast #2912197
Lesenswert?

Martin Wende schrieb:
> Bei ner SD Karte musste nen Cluster von 512byte zwischenspeichern und
> jetz guck mal wie groß der RAM deiner Vorschläge is.
> OPS!

Dass heisst auch - theoretisch - ich sammel erst so viel Messwerte, bis 
der 512byt-große Cluster voll ist und uebertrage den dann in einem Zug 
zu der SD-Karte?
(Firma: fritzler-avr.de) #2912212
Lesenswert?

Peter Binder schrieb:
> Dass heisst auch - theoretisch - ich sammel erst so viel Messwerte, bis
> der 512byt-große Cluster voll ist und uebertrage den dann in einem Zug
> zu der SD-Karte?

Kannst auch 512byte auslesen, ein Bit ändern und wieder raufschreiben ;)
Aber ja so kann mans machen, ist dann eben nur ohne Dateisystem.
Wenns am PC shcnell auslesbar sein soll, wird das Dateisystem noch oben 
drauf benötigt.

Brauchst aber trotzdem mehr als 512byte RAM, hast ja noch Systemvaiablen 
und den STack im RAM rumgeistern.
Gast #2912255
Lesenswert?

µC-Bastler schrieb:
> August schrieb:
>> Abgesehen davon ist da m.E. im Schaltplan ganz schön gemurkst worden
>
> Woraus entnimmst du, dass der µC mit 5V betrieben werden soll. VCC ist
> im Schaltplan mit 3V3 angegeben.

Von welchem Schaltplan reden wir?

In dem ersten Schaltplan mit dem ATmega8 ist zwar alles auf 3.3V, aber 
AVCC ist nicht beschaltet und der MAX232 ist nicht für 3.3V ausgelegt. 
Stattdessen könnte man dafür einen MAX3232 nehmen.

Im Schaltplan mit der Versionsnummer 2.4 werden zwar 5V und 3.3V 
erzeugt, aber der AVR wird mit 5V Spannung versorgt. Damit sind auch die 
Ausgänge (IO-Pins) auf einem Pegel von 5V. Und die gehen ohne 
Pegelwandler direkt auf die 3.3V Eingänge der SD-Karte. Das ist Murks.

August
Gast #2912333
Lesenswert?

August schrieb:
> Von welchem Schaltplan reden wir?

Na, von dem SD-Card Interface am ATmega8.

Mit dem MAX232 hast du´wohl Recht. Der Rest der µC-Beschaltung ist 
sowieso rudimentär, da etliche Dinge nicht eingezeichnet sind 
(Beschaltung von AVCC, AGnd, Reset). Wegen der Genauigkeit der Baudrate 
der RS232 sollte man besser auch einen ext. Quarz vorsehen.
Gast #2913090
Lesenswert?

Spess53 schrieb:
> Esgibt ja auch noch ATMega168/328.

Hab ich gesehen. Aber diese uCs sind alle sooooo klein, die kann ich 
nicht mehr auf meinem Steckbrett draufstecken, ausserdem kann ich so 
kleine Sachen garnicht löten. Idealerweise muss ich mir dann einen 
solchen uC bestellen, der schon irgendwie auf einer Platine draufgelötet 
ist und wo Kontaktstifte zum Ausgang vorhanden sind.

Aber mit meinem AVRISP mKII müsste ich diese größeren ja auch 
programmieren können?
Gast #2913107
Lesenswert?

ich hab grad nochmal in einer Liste geschaut:

Atmega88:

BootMemor 8, DataMem 1024, eeprom 512

Atmega168
BootMem 16, DataMem 1024, eeprom 512


Also wäre der Atmega168 wirklich "besser" für SD-Schreibkram geeignet? 
So viel mehr Speicher DataMem hat der uC doch garnicht.
Moderator Persönliche Seite #2913195
Lesenswert?

Peter Binder schrieb:
> Also wäre der Atmega168 wirklich "besser" für SD-Schreibkram geeignet?
> So viel mehr Speicher DataMem hat der uC doch garnicht.

Beim Atmega88 und Atmega168 ist die RAM-Größe identisch. Wenn Dir 1K 
nicht reicht, nimmst Du halt den Atmega328, der hat 2K RAM. Ausserdem 
bekommt man den 328er oft schon billiger als den 168er... liegt wohl an 
den vielen Arduinos draußen.

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