Forum: Mikrocontroller und Digitale Elektronik -RAM-


von Beginner (Gast)


Lesenswert?

Hallo zusammen,
ich bin bei der Schaltung meines ersten Boards, auf dem Board gibts ein
Atmega8, zum Training möchte ich einen externen Speicher drauf haben, so
kann ich lernen es anzusprechen, lesen.., was kann ich da benutzen??
SRAM?? worauf soll ich achten??

bedanke mich im vorraus für eure Hilfe

Gruß

von Hannes L. (hannes)


Lesenswert?

Schau dir mal das Datenblatt des Mega8515 an. Dann kannst du immer noch
über SRAM am Mega8 nachdenken.

...

von Thomas K. (thkais)


Lesenswert?

Falls Du darauf spekulierst, in den RAM ausführbaren Code laden und
ausführen zu können - geht nicht.
Ansonsten dürfte es gerade für einen Anfänger ziemlich ausarten, denn
es wird mit den benötigten Pins schon knapp... Da ist HanneS Tipp schon
genau der richtige.

von Beginner (Gast)


Lesenswert?

ok vieln Dank, die Idee war einfach irgendwelche Daten im externen RAM
zu speicher und bei BEdarf wieder zu lesen, aber das wird wohl knapp
mit den Pins!!

von Hannes L. (hannes)


Lesenswert?

Da es Dein erstes Board werden soll, wird es sowiso nicht "vollkommen"
sein. Denn wenn es fertig ist, wirst Du erkennen, dass es an Deinen
Ansprüchen vorbei geht. Das "perfekte Board" kann und wird es nicht
geben.

Ich habe z.B. viele AVR-Entwicklungen auf gefrästen bzw. geflexten
Platinenstücken realisiert, wobei die Bauteile meist auf der
Leiterseite bestückt wurden (Maxi-SMD). Der Zweck heiligt die Mittel...
(www.hanneslux.de/avr/)

Wenn es ein Mega8 (48/88/168)-Board werden soll, dann schau Dir das
"myAVR-Board" von www.myavr.de an.

Solltest Du aber auf die Idee kommen, ein ordentliches Board für
Mega8515 (DIL 40) und SRAM (DIL 32) zu entwickeln, dann melde Dich
nochmal. Wenn der Preis ok ist, hätte ich daran Interesse... ;-)

Aber ich vermute mal, dass Du erstmal andere Hürden zu nehmen hast.
Verabschiede Dich am besten von dem Gedanken, die "Eierlegende
Wollmilchsau" entwickeln zu wollen. Die gibt es nämlich nicht, die
Anwendungen sind einfach zu unterschiedlich.

...

von Beginner (Gast)


Lesenswert?

Na vielen Dank Hannes für das Angebot ;-)

der schritt mit den Starter-Kits habe ich gerade hinter mir, möchte
jetzt was eigenes, wird zwar nicht so ganz mein erstes Board, aber das
erste mit Mikrocontroller, Signal-Generator, und da ich das Board zum
Testen möchte, lasse ich auch Paar Bauteile extra drauf, dann kann ich
immer rumprobieren, mit dem RAM wird wegen den Pins nicht klappen aber
ein Flash Speicher, hauptsache irgendwas schreiben und dann ausgeben!!

von Hannes L. (hannes)


Lesenswert?

Naja, für ein universelles MC-Board ist der Mega8 nun nicht gerade die
beste Wahl, es sei denn, du stehst auf 6-Bit-Technik.
Denn wenn Du UART nutzen willst brauchst Du einen (Baudraten-)Quarz,
und dann hat jeder Port nur noch 6 Bit. ;-(

Es gibt serielle EEPROMs, die sich mit MCs gut ansprechen lassen. Schau
einfach mal, was man in Sande vorrätig hat, dann such' die betreffenden
Datenblätter zusammen.

Auch eine MMC oder SD-Card lässt sich mit dem MC ansprechen. Allerdings
erfordert FAT mehr RAM im AVR als der Mega8 hat. Mit einem
Eigenbau-Dateisystem (dann nicht zum PC-Kartenleser kompatibel) sollte
das aber funktionieren.

...

von Beginner (Gast)


Lesenswert?

also nochmal vielen Dank,
der Atmega8 ist kein muß, werde dann den 8515 "nehemen".
noch eine letzte Frage: in deiner HP steht was von den ungeraden
Quarzs, gibts da eine Formel um den Wert auszurechnen, oder wie kann
ich wissen welcher zu nehmen ist, wenn Z.B. der mit dem geraden Wert
nicht "geeignet" für UART ist?

von Thomas (kosmos)


Lesenswert?

falls du ein größere externes SRAM nutzen willst kannst du das mittels
Latches machen du benötigst dann nur einen Port und noch ein paar
Steuerleitungen. Siehe anhang ich habe das mal mit einen EEPROM gemacht
funktioniert aber auch mit einem SRAM. Das ganze kann man mit mehreren
Latches erweiter so das man alle Adressleitungen nutzen kann.

Kleine Erklärung zum Latch: Es ist ein 8bit Speicher welchem du 8 Bits
übergeben kannst. Dann kannst du seine Ausgänge aktiv schalten das
gespeicherte landet an den Ausgängen, die Eingänge kannst du
hochohmigschalten, das Teil ist dann in  deiner Schaltung wie
unsichtbar und du kannst den Port wieder für andere Ausgabe oder
Eingabeaufgaben nutzen.

Auf jedenfall ist es für einen Anfänger viel einfacher anzusteuern als
die seriellen Speicherbausteine.

Funktionsablauf. Du übergibst zuerst die Adresse an das Latchs,
schltest seine Ausgänge aktiv und die Eingänge hochohmig, dann gibst du
das Byte auf den Port das gespeichert werden soll und bedienst die
Steuerleitungen zum SRAM so das die Daten übernommen werden. Beim Lesen
gehts genauso nur das du nach der Adressübergabe den Port wieder als
Eingang schaltest und die Steuersignale an das SRAm gibts die Daten an
dieser Adresse gespeicherten Daten auszugeben.

von Thomas O. (Gast)


Angehängte Dateien:

Lesenswert?

sorry Bild vergessen

von Hannes L. (hannes)


Lesenswert?

> steht was von den ungeraden
> Quarzs, gibts da eine Formel um den Wert auszurechnen,

Eine Formel habe ich jetzt nicht parat, die wird es aber sicher geben.
Schau dir die üblichen Baudraten an, denke daran, dass der UART-Takt 16
mal so hoch sein muss wie die Baudrate und dann suche das kleinste
gemeinsame Vielfache. Dies ist die niedrigste baudratentaugliche
Taktfrequenz. Ganzzahlige Vielfache davon sind weitere
baudratentaugliche Frequenzen.

Wenn Du nach ganzzahligen Vielfachen von 1,8432 MHz suchst, dann bist
Du auf der sicheren Seite.

...

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.